<apex:page controller="SelectAssetEstimateVMController" tabStyle="Maintenance_Contract_Estimate__c" sidebar="false" showHeader="true" id="allPage" action="{!init}">
|
<head>
|
<!-- <meta http-equiv="x-ua-compatible" content="ie=edge" /> -->
|
<!-- <meta name="viewport" content="width=device-width, initial-scale=1" /> -->
|
<!-- <apex:slds /> -->
|
</head>
|
<apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/>
|
<apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
|
<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
|
<apex:includeScript value="/soap/ajax/29.0/connection.js"/>
|
<apex:includeScript value="/soap/ajax/29.0/apex.js"/>
|
<style type="text/css">
|
table { border-collapse: collapse; }
|
|
.container {
|
overflow:auto;
|
width:100%;
|
height:304px;
|
}
|
.container2 {
|
overflow:auto;
|
width:100%;
|
height:404px;
|
}
|
.btntable.dateFormat {
|
display: none;
|
}
|
</style>
|
<script type="text/javascript">
|
//add by rentx 2020-11-17 start 失去焦点
|
function setFocusOnLoad() {}
|
function bodyOnLoad(){setFocusOnLoad();}
|
//add by rentx 2020-11-17 end 失去焦点
|
|
var oxygenPriceAdj = {!oxygenPriceAdj};
|
var approvalDate = '';
|
var Session_ID = '{!$Api.Session_ID}';
|
var Confirm_ChangedAfterPrint = '打印后行信息有变化,是否继续操作(报价编码会变新)?';
|
var isNewAddMonth = {!isNewAddMonth};
|
var Confirm_EstimateRefresh = '已超过创建日3个月,是否更新报价?';
|
window.sfdcPage.appendToOnloadQueue(function() { calonLoad() });
|
|
function approvalJs() {
|
approvalDate = new Date();
|
var rowCnt = j$(escapeVfId('allPage:allForm:allBlock:assetSection:productCnt')).val();
|
refreshAsset(rowCnt);
|
}
|
|
//add by gwy 2021-01-27 start 提交时的提示框
|
function KindsAndMonths() {
|
var months = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contract:monthRange')).val());
|
var contrNew = document.getElementById("allPage:allForm:allBlock:contractInfo:Contract_TypeTXT").innerHTML;
|
if(months>12 && months<60 && contrNew == '新品合同'){
|
if(confirm("本次您提交的报价为多年期新品合同,请您在正式提交报价前先将经销商与医院签订的多年期合同邮件发送服务本部报价窗口。若已经提交请点击确定,继续保存提交。")){
|
return true;
|
}else{
|
return false;
|
}
|
}
|
// 先款后修-提交报价时如果是先款对象进行提示 thh 20220407 start
|
var FirstParagraphEnd = j$(escapeVfId('allPage:allForm:allBlock:contract:FirstParagraphEnd')).val();
|
if(FirstParagraphEnd == 'on'){
|
if (confirm('本次签约经销商是先款对象,请确认是否提交报价?')) {
|
return true;
|
}else{
|
return false;
|
}
|
}
|
// 先款后修-提交报价时如果是先款对象进行提示 thh 20220407 end
|
return true;
|
}
|
//add by gwy 2021-01-27 end 提交时的提示框
|
|
|
|
|
|
function unblockUI(){
|
// 2021、8、26 合同报价页面的优化,无保有设备点检对象选择框变黑 fxk star
|
// disable1();
|
// 2021、8、26 合同报价页面的优化,无保有设备点检对象选择框变黑 fxk end
|
pageSetDisabled();
|
var isChange = j$(escapeVfId('allPage:allForm:changedSubmitPrice')).value();
|
if (isChange=='true') {
|
j$(escapeVfId('allPage:allForm:changedSubmitPrice')).val('false');
|
var rowCnt = j$(escapeVfId('allPage:allForm:allBlock:assetSection:productCnt')).val();
|
refreshAsset(rowCnt);
|
}
|
j$("#sbArea").fadeOut(500, function(){
|
j$("#sbArea").remove();
|
});
|
}
|
//<!-- HWAG-B4R3SS START 20181026-->
|
function clearAndSearch() {
|
document.getElementById("allPage:allForm:allBlock:text1").value = "";
|
document.getElementById("allPage:allForm:allBlock:cond1").value = "equals";
|
document.getElementById("allPage:allForm:allBlock:val1").value = "";
|
blockme();
|
searchfunc();
|
}
|
function searchJs() {
|
blockme();
|
searchfunc();
|
}
|
//<!-- HWAG-B4R3SS END 20181026-->
|
// 初始化设定画面项目不可用
|
function pageSetDisabled(){
|
var isDisabled = {!PageDisabled};
|
if (isDisabled) {
|
j$(escapeVfId('allPage:allForm:allBlock:contract:depart')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:contract:startdate')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:contract:monthRange')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:contract:estimateTarget')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:contract:EndUserType')).attr("disabled", true);
|
var rowCnt = {!productCount};
|
for (var i = 0; i < rowCnt; i++) {
|
// alert(11111111111111 +rowCnt);
|
var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
|
if (isManual == 'true') {
|
var a = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Assert'));
|
a.attr("disabled", true);
|
}
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetCheck')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':comment')).attr("disabled", true);
|
}
|
j$(escapeVfId('allPage:allForm:allBlock:appendCondition:Examination_Count')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:disPercent')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:disMoney')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:discountReason')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:improveConsumptionRateIdea')).attr("disabled", true);
|
|
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:quotation_Amount')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:Appbackground:finalPriceDecideWay')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:Appbackground:Sales_incidental')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:Appbackground:mainTalksTime')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:Appbackground:talksStartDate')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:Appbackground:AgencyHos_Price')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:Appbackground:discountReason')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:Appbackground:improveConsumptionRateIdea')).attr("disabled", true);
|
|
j$(escapeVfId('allPage:allForm:contractstartdate')).attr("disabled", true);
|
var target = j$(escapeVfId('allPage:allForm:allBlock:contract:estimateTarget')).val();
|
if (target != '医院') {
|
j$(escapeVfId('allPage:allForm:allBlock:contract:dealer')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:contract:FirstParagraphEnd')).attr("disabled", true);
|
}
|
}
|
if ('{!DecideBtnDisabled}' == 'false') {
|
j$(escapeVfId('allPage:allForm:contractstartdate')).attr("disabled", false);
|
}
|
}
|
// 2021、8、26 合同报价页面的优化,无保有设备点检对象选择框变黑 fxk star
|
|
// function disable1(){
|
// // alert(12312);
|
// // addNewRows();
|
// var isDisabled ;
|
// var rowCnt = {!productCount}+{!productCount2};
|
// if(isDisabled){
|
|
// // alert(22222 + '444' +rowCnt);
|
// for (var i = 0; i < rowCnt; i++) {
|
// // 保有设备名
|
// var assN = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:'+ i +':assetName')).text();
|
// var assN1 = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:'+ i +':Assert')).val();
|
// // alert('1234567'+assN +'----'+assN1);
|
// if(!assN1 && !assN){
|
// // alert('23456789'+assN);
|
// j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetCheck' )).attr("disabled", true);
|
// }else{
|
// j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetCheck' )).attr("disabled", false);
|
// }
|
// }
|
// }
|
// }
|
// 2021、8、26 合同报价页面的优化,无保有设备点检对象选择框变黑 fxk end
|
var winOpenObj;
|
function closeWin(flg) {
|
winOpenObj.close();
|
if (flg==2) {
|
window.location.href="/{!URLENCODE(estimate.Id)}/e?completion=2";
|
}
|
}
|
function controlDisabled() {
|
winOpenObj = window.open("/apex/ChangeDealerApproval?eid=" + '{!URLENCODE(estimate.Id)}','ChangeDealerApproval','height=300,width=700,toolbar=no,menubar=no,left=20%,top=30%,scrollbars=yes,resizable=no,location=no,status=no');
|
}
|
// 見積もり作成後、3ヶ月以内であれば見積もりの内容を継続使用可能
|
function calonLoad() {
|
// 2021、8、26 合同报价页面的优化,无保有设备点检对象选择框变黑 fxk star
|
// disable1();
|
// 2021、8、26 合同报价页面的优化,无保有设备点检对象选择框变黑 fxk end
|
pageSetDisabled();
|
var createdDate = new Date('{!estimate.CreatedDate}');
|
// 报价中设备的机身编码为空时的新品合同有效期延长 20200710 gzw
|
var aLLManual = 'true';
|
var cntWithKara = {!productCount};
|
|
for (var i = 0; i < cntWithKara; i++) {
|
var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
|
if (isManual != 'true') {
|
aLLManual = 'false';
|
break;
|
}
|
}
|
var nowDate = new Date();
|
if (aLLManual == 'false') {
|
createdDate = createdDate.setMonth(createdDate.getMonth() + 3);
|
// FIX liang JSの時間って addMonthsないですか? そかも 1/1 なら、 4/1もだめですよ。
|
if (createdDate < Date.parse(nowDate)) {
|
j$(escapeVfId('allPage:allForm:allBlock:blocktop:savebtntop')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:blocktop:saveAndCancelBtn')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:blocktop:approvalbtntop')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:blocktop:savebtntop')).attr("class", 'btnDisabled');
|
j$(escapeVfId('allPage:allForm:allBlock:blocktop:saveAndCancelBtn')).attr("class", 'btnDisabled');
|
j$(escapeVfId('allPage:allForm:allBlock:blocktop:approvalbtntop')).attr("class", 'btnDisabled');
|
j$(escapeVfId('allPage:allForm:savebtn')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:approvalbtn')).attr("disabled", true);
|
// 最初は、Decideの同時に保存もあります、それを防ぐため、保存とDecideを同時に無効にする
|
// 考えてみると、クラスにDecideの判断があり、Decideの時明細変更チェックもあります、3ヶ月のチェックもあります、ここで無効にする意味がありません
|
//j$(escapeVfId('allPage:allForm:decidebtn')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:savebtn')).attr("class", 'btnDisabled');
|
j$(escapeVfId('allPage:allForm:approvalbtn')).attr("class", 'btnDisabled');
|
//j$(escapeVfId('allPage:allForm:decidebtn')).attr("class", 'btnDisabled');
|
|
if (confirm(Confirm_EstimateRefresh)) {
|
window.location.href="/apex/SelectAssetEstimateVM?copyid={!URLENCODE(targetEstimateId)}";
|
return true;
|
} else {
|
if ('{!DecideBtnDisabled}' == 'false') {
|
// decide可能の場合、別途decideのチェックが必要、
|
// チェック後再度画面refreshされるため、decide可能の場合、decideボタンが使えるようになります。
|
changeContractStartdate('{!estimate.Contract_Start_Date__c}');
|
}
|
return false;
|
}
|
}
|
}else{
|
createdDate = createdDate.setMonth(createdDate.getMonth() + 6);
|
// FIX liang JSの時間って addMonthsないですか? そかも 1/1 なら、 4/1もだめですよ。
|
if (createdDate < Date.parse(nowDate)) {
|
j$(escapeVfId('allPage:allForm:allBlock:blocktop:savebtntop')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:blocktop:saveAndCancelBtn')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:blocktop:approvalbtntop')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:allBlock:blocktop:savebtntop')).attr("class", 'btnDisabled');
|
j$(escapeVfId('allPage:allForm:allBlock:blocktop:saveAndCancelBtn')).attr("class", 'btnDisabled');
|
j$(escapeVfId('allPage:allForm:allBlock:blocktop:approvalbtntop')).attr("class", 'btnDisabled');
|
|
j$(escapeVfId('allPage:allForm:savebtn')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:approvalbtn')).attr("disabled", true);
|
// 最初は、Decideの同時に保存もあります、それを防ぐため、保存とDecideを同時に無効にする
|
// 考えてみると、クラスにDecideの判断があり、Decideの時明細変更チェックもあります、3ヶ月のチェックもあります、ここで無効にする意味がありません
|
//j$(escapeVfId('allPage:allForm:decidebtn')).attr("disabled", true);
|
j$(escapeVfId('allPage:allForm:savebtn')).attr("class", 'btnDisabled');
|
j$(escapeVfId('allPage:allForm:approvalbtn')).attr("class", 'btnDisabled');
|
//j$(escapeVfId('allPage:allForm:decidebtn')).attr("class", 'btnDisabled');
|
|
if (confirm('已超过创建日6个月,是否更新报价?')) {
|
window.location.href="/apex/SelectAssetEstimateVM?copyid={!URLENCODE(targetEstimateId)}";
|
return true;
|
} else {
|
if ('{!DecideBtnDisabled}' == 'false') {
|
// decide可能の場合、別途decideのチェックが必要、
|
// チェック後再度画面refreshされるため、decide可能の場合、decideボタンが使えるようになります。
|
changeContractStartdate('{!estimate.Contract_Start_Date__c}');
|
}
|
return false;
|
}
|
}
|
}
|
|
if ('{!DecideBtnDisabled}' == 'false') {
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:oldMainteReal')).val(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:mainteReal')).text());
|
}
|
}
|
|
function checkAll(checker) {
|
var cnt = j$(escapeVfId('allPage:allForm:allBlock:assetSection:productCnt')).val();
|
|
for (var i = 0; i < cnt; i++) {
|
//2021-11-30 fy add LJPH-C8W8FV 置顶 start
|
//if (j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetRowCheckbox')).size() == 0) {
|
// continue;
|
//}else{
|
// document.getElementById('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetRowCheckbox').checked = checker.checked;
|
//}
|
//2021-11-30 fy add LJPH-C8W8FV 置顶 end
|
if (j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetRowCheckbox')).size() == 0) {
|
break;
|
}
|
document.getElementById('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetRowCheckbox').checked = checker.checked;
|
}
|
}
|
|
function checkAll2(checker) {
|
var cnt2 = j$(escapeVfId('allPage:allForm:allBlock:assetSection2:productCnt2')).val();
|
var outer = 0;
|
for (var i = 0; i < cnt2; i++) {
|
outer = Math.floor(i / 1000);
|
if (document.getElementById('allPage:allForm:allBlock:assetSection2:outassetTable2:' + outer +':assetTable2:' + (i-(1000*outer)) + ':assetRowCheckbox2').disabled == false) {
|
document.getElementById('allPage:allForm:allBlock:assetSection2:outassetTable2:' + outer +':assetTable2:' + (i-(1000*outer)) + ':assetRowCheckbox2').checked = checker.checked;
|
}
|
}
|
}
|
|
function checkDiscount(val) {
|
if (val == null || val == "") {
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:quotation_Amount')).val("");
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:discount_Rate')).text("");
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:discount_RateHidden')).val(0.00);
|
return;
|
}
|
if (isNaN(parseInt(val))) {
|
alert("请输入数值");
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:quotation_Amount')).val(0.00);
|
return;
|
}
|
val = localParseFloat(val);
|
//val = Math.round(val * 100) / 100;
|
val = Math.round(val);
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:quotation_Amount')).val(toNumComma(val));
|
makeRealPrice(1);
|
}
|
|
function checkContractRange(val, cnt) {
|
if (isNaN(parseInt(val))) {
|
alert("必须输入合同月数!");
|
j$(escapeVfId('allPage:allForm:allBlock:contract:monthRange')).val("");
|
return;
|
}
|
if (val <= 0) {
|
alert("合同月数必须大于0");
|
j$(escapeVfId('allPage:allForm:allBlock:contract:monthRange')).val("");
|
return;
|
}
|
if (val > 60) {
|
alert("合同期最长只能选择60个月!");
|
j$(escapeVfId('allPage:allForm:allBlock:contract:monthRange')).val("");
|
return;
|
}
|
// HWAG-BA73ZP
|
//contractStartDateChange();
|
refreshAsset(cnt);
|
}
|
|
function refreshAsset(cnt) {
|
// alert(cnt);
|
// 提交后就页面不计算了
|
var isDisabled = {!PageDisabled};
|
// 合同总理
|
var newCount = 0;
|
var oyearCount = 0;
|
var firstCCount = 0;
|
var conCCount = 0;
|
// row金額合計
|
var repairSum = 0;
|
var listSum = 0;
|
// 新品合同 判断
|
var newCon = true;
|
var contractStartDate = new Date(j$(escapeVfId('allPage:allForm:contractstartdate')).value());
|
|
|
// 预定开始日
|
var startdate = new Date(j$(escapeVfId('allPage:allForm:allBlock:contract:startdate')).value());
|
// 预定开始日-6个月
|
startdate.setMonth(startdate.getMonth() - 6);
|
// 申请日 当前日期
|
if(approvalDate != ''){
|
//申请日
|
approvalDate = new Date(approvalDate.toLocaleDateString());
|
if (Date.parse(approvalDate) < Date.parse(startdate)) {
|
newCon = false;
|
}
|
|
}
|
|
// 最高、最低价格合计
|
var downPriceSum = 0;
|
var upPriceSum = 0;
|
// 合同月数乗算
|
var month = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contract:monthRange')).val());
|
if (month == undefined || month == "") {
|
month = 1;
|
}
|
var month2 = 0;
|
if (month > 12) {
|
month2 = month - 12;
|
month = 12;
|
}
|
for (var i = 0; i < cnt; i++) {
|
var strMoney = 0;
|
var repairMoney = 0;
|
// 行项目 最高、最低价格合计
|
// 续签价格取联动价格页面计算,首签或产品取 实际价格
|
// 下线价格
|
var downPrice = 0;
|
// 上线价格
|
var upPrice = 0;
|
|
// 12个月合同金额
|
var Price_YearTXT = 0;
|
|
var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
|
var isnew = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetNewHidden')).val();
|
var assetListmonth = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceHidden')).val();
|
if (isManual == 'true') {
|
var a = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Assert')).value();
|
if (a != '') {
|
// 所有设备按安装日、发货日(最早的),距离合同开始日6个月内都是新品合同
|
//var isNewDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':isNewDate')).value());
|
//isNewDate.setMonth(isNewDate.getMonth() + 6);
|
//if (Date.parse(contractStartDate) > Date.parse(isNewDate)) {
|
// newCon = false;
|
//}
|
|
strMoney = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceHidden')).val();
|
// alert(strMoney);
|
Price_YearTXT = strMoney * 12;
|
if (isnew == 'true') {
|
newCount ++;
|
strMoney = month * strMoney + month2 * strMoney / {!isNewPriceAdj};
|
} else {
|
newCon = false;
|
strMoney = month * strMoney + month2 * strMoney;
|
}
|
var b = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Contract_No')).value();
|
var LastMContractRecord = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContractRecord')).value();
|
if(b != ''){
|
conCCount ++;
|
// 1.合同期不满一年时,合同期超过一半才可开始续签报价。(eg:11个月的合同从6个月后才可报价。)
|
|
// 2.一年以上的合同,在结束前6个月开始可以开放续签报价。
|
|
var lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':End_Date')).value());
|
var lastContRange = 0;
|
if(LastMContractRecord == 'VM_Contract'){
|
newCount++;
|
lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':endDateGurantee_Text')).value());
|
lastContRange = 36;
|
}else{
|
lastContRange = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':lastContRange')).value();
|
}
|
//最后结束日+1年
|
lastendDate.setMonth(lastendDate.getMonth() + 12);
|
if (Date.parse(contractStartDate) > Date.parse(lastendDate) ) {
|
oyearCount ++;
|
}
|
// 取联动价格
|
// 上一期合同实际报价月额
|
//
|
var LastMContract_Price = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContract_Price')).val());
|
var Adjustment_ratio_Lower = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_ratio_Lower')).val());
|
var Adjustment_ratio_Upper = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_ratio_Upper')).val());
|
//计算惩罚率
|
var Punish = calculateNtoMRatio( lastContRange,(month + month2));
|
if(Punish == 0){
|
return;
|
}
|
// 判断有无报价:没有按照标准价格实际联动
|
var Estimate_Num = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Estimate_NumHidden')).val();
|
if(Estimate_Num == 0){
|
if(LastMContractRecord == 'VM_Contract'){
|
//upPrice = (strMoney) * (1 + Adjustment_ratio_Upper/100);
|
//downPrice = (strMoney) * (1 + Adjustment_ratio_Lower/100);
|
upPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Upper/100);
|
downPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Lower/100);
|
}else{
|
upPrice = strMoney;
|
downPrice = strMoney * 0.8;
|
}
|
}else{
|
upPrice = (LastMContract_Price * Punish) * (1 + Adjustment_ratio_Upper/100);
|
downPrice = (LastMContract_Price * Punish) * (1 + Adjustment_ratio_Lower/100);
|
}
|
}else{
|
//firstCCount ++;
|
upPrice = strMoney;
|
downPrice = strMoney * 0.8;
|
}
|
// 上下限四舍五入
|
upPrice = upPrice.toFixed(2);
|
downPrice = downPrice.toFixed(2);
|
// 12个月合同金额
|
//j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceTXT')).text(toNumComma(Price_YearTXT));
|
//j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceTXTHidden')).val(Price_YearTXT);
|
if (!isDisabled) {
|
// 实际联动价格 start
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_price')).text(toNumComma(downPrice));
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_priceHidden')).val(downPrice);
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_price')).text(toNumComma(upPrice));
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_priceHidden')).val(upPrice);
|
// 实际联动价格 end
|
}
|
|
//j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPrice')).text(toNumComma(strMoney));
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPricePageHidden')).val(strMoney);
|
|
repairMoney = j$.trim(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).value());
|
} else {
|
// TODO 一時的な対応、なんで別行の金額リフレッシュされた?
|
//j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPrice')).text("");
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPricePageHidden')).val();
|
|
// 12个月合同金额
|
//j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceTXT')).text("");
|
//j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceTXTHidden')).val();
|
if (!isDisabled) {
|
// 实际联动价格 start
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_price')).text("");
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_priceHidden')).val();
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_price')).text("");
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_priceHidden')).val();
|
// 实际联动价格 end
|
}
|
}
|
}
|
else {
|
// 所有设备按安装日、发货日(最早的),距离合同开始日6个月内都是新品合同
|
var isNewDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':isNewDate')).value());
|
isNewDate.setMonth(isNewDate.getMonth() + 6);
|
if (Date.parse(contractStartDate) > Date.parse(isNewDate)) {
|
newCon = false;
|
}
|
strMoney = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceHidden')).val();
|
Price_YearTXT = strMoney * 12;
|
if (isnew == 'true') {
|
strMoney = month * strMoney + month2 * strMoney / {!isNewPriceAdj};
|
} else {
|
strMoney = month * strMoney + month2 * strMoney;
|
}
|
var b = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Contract_No')).value();
|
var LastMContractRecord = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContractRecord')).value();
|
if(b != ''){
|
conCCount ++;
|
// 1.合同期不满一年时,合同期超过一半才可开始续签报价。(eg:11个月的合同从6个月后才可报价。)
|
|
// 2.一年以上的合同,在结束前6个月开始可以开放续签报价。
|
var lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':End_Date')).value());
|
var lastContRange = 0;
|
if(LastMContractRecord == 'VM_Contract'){
|
newCount++;
|
lastendDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':endDateGurantee_Text')).value());
|
lastContRange = 36;
|
}else{
|
lastContRange = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':lastContRange')).value();
|
}
|
//最后结束日+1年
|
lastendDate.setMonth(lastendDate.getMonth() + 12);
|
if (Date.parse(contractStartDate) > Date.parse(lastendDate)) {
|
oyearCount ++;
|
}
|
// 取联动价格
|
// 上一期合同实际报价月额
|
//
|
var LastMContract_Price = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContract_Price')).val());
|
var Adjustment_ratio_Lower = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_ratio_Lower')).val());
|
var Adjustment_ratio_Upper = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_ratio_Upper')).val());
|
//计算惩罚率
|
var Punish = calculateNtoMRatio( lastContRange,(month + month2));
|
if(Punish == 0){
|
return;
|
}
|
// 判断有无报价:没有按照标准价格实际联动
|
var Estimate_Num = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Estimate_NumHidden')).val();
|
if(Estimate_Num == 0){
|
if(LastMContractRecord == 'VM_Contract'){
|
//upPrice = (strMoney) * (1 + Adjustment_ratio_Upper/100);
|
//downPrice = (strMoney) * (1 + Adjustment_ratio_Lower/100);
|
upPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Upper/100);
|
downPrice = (assetListmonth * Punish) * (1 + Adjustment_ratio_Lower/100);
|
}else{
|
upPrice = strMoney;
|
downPrice = strMoney * 0.8;
|
}
|
}else{
|
upPrice = (LastMContract_Price * Punish) * (1 + Adjustment_ratio_Upper/100);
|
downPrice = (LastMContract_Price * Punish) * (1 + Adjustment_ratio_Lower/100);
|
}
|
}else{
|
if (isnew == 'true') {
|
newCount ++;
|
} else {
|
newCon = false;
|
firstCCount ++;
|
}
|
upPrice = strMoney;
|
downPrice = strMoney * 0.8;
|
}
|
// 上下限四舍五入
|
upPrice = upPrice.toFixed(2);
|
downPrice = downPrice.toFixed(2);
|
// 12个月合同金额
|
//j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceTXT')).text(toNumComma(Price_YearTXT));
|
//j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceTXTHidden')).val(Price_YearTXT);
|
if (!isDisabled) {
|
// 实际联动价格 start
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_price')).text(toNumComma(downPrice));
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Lower_priceHidden')).val(downPrice);
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_price')).text(toNumComma(upPrice));
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_priceHidden')).val(upPrice);
|
// 实际联动价格 end
|
}
|
//j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPrice')).text(toNumComma(strMoney));
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPricePageHidden')).val(strMoney);
|
//
|
repairMoney = j$.trim(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).value());
|
}
|
repairSum = repairSum + localParseFloat(repairMoney);
|
listSum = listSum + localParseFloat(toNum(strMoney));
|
downPriceSum = downPriceSum + localParseFloat(toNum(downPrice));
|
upPriceSum = upPriceSum + localParseFloat(toNum(upPrice));
|
}
|
j$(escapeVfId('allPage:allForm:allBlock:assetRepairSumNum')).text(toNumComma(repairSum));
|
//j$(escapeVfId('allPage:allForm:allBlock:assetListSumNum')).text(toNumComma(listSum));
|
|
//j$(escapeVfId('allPage:allForm:allBlock:contractInfo:assetSumPrice')).text(toNumComma(listSum));
|
//j$(escapeVfId('allPage:allForm:allBlock:contractInfo:assetSumPriceHidden')).val(toNum(listSum));
|
if (!isDisabled) {
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceUp')).text(toNumComma(Math.round(upPriceSum)));
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceUpHidden')).val(toNum(Math.round(upPriceSum)));
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceDown')).text(toNumComma(Math.round(downPriceSum)));
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceDownHidden')).val(toNum(Math.round(downPriceSum)));
|
}
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:assetRepairSumPrice')).text(toNumComma(repairSum));
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:assetRepairSumPriceHidden')).val(toNum(repairSum));
|
|
var allcount = j$(escapeVfId('allPage:allForm:allBlock:productCount3')).value();
|
var result = '';
|
if (allcount == 0) {
|
result = null;
|
}else
|
if (newCount > 0 && newCount == allcount && newCon == true) {
|
result = '新品合同';
|
}else if (((newCount > 0 && newCount == allcount) ||(newCount + firstCCount == allcount)) && newCon == false) {
|
result = '首签合同';
|
}else if(firstCCount > 0 && firstCCount == allcount){
|
result = '首签合同';
|
// 20220328 ljh update LJPH-C8FB4P【委托】配合PBI设备覆盖率的数据准备 start
|
// }else if(oyearCount > 0 && oyearCount == conCCount){
|
}else if(oyearCount > 0 && oyearCount == conCCount && allcount == oyearCount ){
|
// 20220328 ljh update LJPH-C8FB4P【委托】配合PBI设备覆盖率的数据准备 start
|
result = '非续签合同(空白期一年以上)';
|
}else{
|
result = '续签合同';
|
}
|
document.getElementById("allPage:allForm:allBlock:contractInfo:Contract_TypeTXT").innerHTML = result;
|
document.getElementById("allPage:allForm:allBlock:contractInfo:Contract_TypeTXTHidden").value = result;
|
// 取消酸化水
|
//NotUseOxygenatedWaterAmount(1);
|
examinationPriceCal(cnt);
|
getLastContractRate();
|
}
|
|
|
|
function examinationPriceCal(cntWithKara) {
|
var examinationCount = localParseInt(j$(escapeVfId('allPage:allForm:allBlock:appendCondition:Examination_Count')).val());
|
var examinationCountStr = number_format_common(examinationCount, 0, ".", ",");
|
j$(escapeVfId('allPage:allForm:allBlock:appendCondition:Examination_Count')).val(examinationCountStr);
|
var cnt = 0;
|
for (var i = 0; i < cntWithKara; i++) {
|
var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
|
if (isManual == 'true') {
|
var a = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Assert')).value();
|
if (a != '') {
|
cnt++;
|
}
|
}
|
else {
|
cnt++;
|
}
|
}
|
var examinationPrice = 0;
|
// 今後復活かも
|
// var cntLot = Math.ceil(cnt / 20);
|
// if (cntLot == 0) {
|
// examinationPrice = 0;
|
// }
|
// else if (cntLot == 1) {
|
// examinationPrice = 2000;
|
// }
|
// else if (cntLot == 2) {
|
// examinationPrice = 3800;
|
// }
|
// else if (cntLot == 3) {
|
// examinationPrice = 5400;
|
// }
|
// else if (cntLot == 4) {
|
// examinationPrice = 6800;
|
// }
|
// else if (cntLot == 5) {
|
// examinationPrice = 8000;
|
// }
|
// else if (cntLot >= 6) {
|
// examinationPrice = 1600 * cntLot;
|
// }
|
j$(escapeVfId('allPage:allForm:allBlock:appendCondition:examinationReal')).text(toNumComma(examinationPrice * examinationCount));
|
j$(escapeVfId('allPage:allForm:allBlock:appendCondition:examinationRealHidden')).val(toNum(examinationPrice * examinationCount));
|
|
// 付加条件総額欄
|
// 20200108 去除附加条件总额
|
// var oxygenPrice = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:NotUseOxygenatedWaterAmount')).text());
|
// j$(escapeVfId('allPage:allForm:allBlock:contractInfo:appendPrice')).text(toNumComma(oxygenPrice + examinationPrice * examinationCount));
|
// j$(escapeVfId('allPage:allForm:allBlock:contractInfo:appendPriceHidden')).val(toNum(oxygenPrice + examinationPrice * examinationCount));
|
|
makeRealPrice(1);
|
}
|
|
/*
|
* @param t 1: 金額により割引
|
*/
|
function makeRealPrice(t) {
|
// 実際金額合計
|
// 申请报价金额
|
var sum1 = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:quotation_Amount')).val());
|
// 修理总额
|
var sum2 = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:assetRepairSumPrice')).text();
|
var sum1 = localParseFloat(sum1);
|
// 上限
|
var upPrice = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceUp')).text();
|
upPrice = localParseFloat(upPrice);
|
// 下限
|
var downPrice = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceDown')).text();
|
downPrice = localParseFloat(downPrice);
|
|
// 相对标准价格范围的折扣率 计算
|
// 1)标准价格范围内时,结果为0;
|
// 2)比标准价格低时,结果是1-希望价格/标准价的最低价格
|
// 3)比标准价格高时,结果是1-希望价格/标准价的最高价格
|
var disMP = 0.00;
|
var disP = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:discount_RateHidden')).val();
|
if(sum1 < downPrice){
|
disMP = toNum((1 - sum1/downPrice) * 100);
|
}else if(sum1 >= downPrice && sum1 <= upPrice){
|
disMP = 0.00;
|
}else if(sum1 > upPrice){
|
disMP = toNum((1 - sum1/upPrice) * 100);
|
}
|
|
|
if (disMP != disP) {
|
disMP = '' + disMP + '%';
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:discount_Rate')).text(disMP);
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:discount_RateHidden')).val(parseFloat(disMP));
|
}
|
// 修理総額を計上
|
sum = sum1 + localParseFloat(sum2);
|
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:mainteReal')).text(toNumComma(sum));
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:mainteRealHidden')).val(toNum(sum));
|
}
|
|
function resetDealer() {
|
var target = j$(escapeVfId('allPage:allForm:allBlock:contract:estimateTarget')).val();
|
var obj = document.getElementById('allPage:allForm:allBlock:contract:dealer');
|
var obj2 = document.getElementById('allPage:allForm:allBlock:contract:FirstParagraphEnd');
|
var obj_lkwgt = document.getElementById('allPage:allForm:allBlock:contract:dealer_lkwgt');
|
if (target == '医院') {
|
obj.style.display = "none";
|
obj2.style.display = "none";
|
obj_lkwgt.style.display = "none";
|
} else {
|
obj.style.display = "block";
|
obj_lkwgt.style.display = "block";
|
obj2.style.display = "block";
|
}
|
}
|
|
function alertMsg() {
|
// body...
|
if('{!isPaymentSet}' == 'false'){
|
alert('请填写付款计划');
|
return false;
|
}else if('{!isPaymentSet}' == 'Denied'){
|
alert('付款计划金额与实际不符,请重新填写');
|
return false;
|
}else{
|
return true;
|
}
|
}
|
function EGFlgconfim() {
|
getEstimateCost();
|
var cntWithKara = {!productCount};
|
// 新合同备品确保提供 是否改变
|
var alert1s = 0;
|
for (var i = 0; i < cntWithKara; i++) {
|
var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
|
var EGFlgtxt = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':EquipmentGuaranteeFlg')).value();
|
var EGFlgnow = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':EGFlgassHidden')).value();
|
if (EGFlgtxt != EGFlgnow) {
|
alert1s = 1;
|
}
|
}
|
if (alert1s == 1) {
|
if (confirm("选择的保有设备[新合同备品确保提供]发生变化,是否继续?")) {
|
|
} else {
|
return false;
|
}
|
}
|
return onclickCheckchangedAfterPrint('true','true');
|
}
|
function onclickCheckchangedAfterPrint(saveBtnDisabled, saveOrApproval) {
|
|
//if(saveBtnDisabled == 'Pttrue'){
|
// var rs = alertMsg();
|
// if(rs){
|
// }else {
|
// return false;
|
// }
|
//}
|
|
var cntWithKara = {!productCount};
|
var alerts = 0;
|
// 新合同备品确保提供 是否改变
|
var alert1s = 0;
|
var today = new Date();
|
today.setMonth(today.getMonth() - 3);
|
|
for (var i = 0; i < cntWithKara; i++) {
|
var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
|
if (isManual == 'true') {
|
var plkid = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Assert_lkid'));
|
var pid = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':ProductId'));
|
if (plkid.size() > 0 && pid.size() > 0) {
|
if (pid.value() != '' && plkid.value() != pid.value().substring(0, 15)) {
|
alert('请使用产品放大镜按钮设定手动产品');
|
return false;
|
}
|
}
|
}
|
if (isManual == 'false') {
|
var strDate = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':finalExaminationDate')).value();
|
// var produ = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Assert')).value();
|
//alert(EGFlgtxt + ':' + EGFlgnow);
|
strDate = strDate.replace(/(^\s*)|(\s*$)/g, "");
|
if (strDate == "" || Date.parse(strDate) < Date.parse(today)) {
|
alerts = 1;
|
}
|
}
|
}
|
if (alerts == 1) {
|
if (confirm("选择的保有设备[最后点检日]为空或已经超过三个月之前,是否继续?")) {
|
|
} else {
|
return false;
|
}
|
}
|
blockme();
|
if (saveOrApproval == "true") {
|
if (saveBeforeCheckPriceChange()) {
|
if (confirm("行信息有变化(服务合同价格),是否更新报价?")) {
|
j$(escapeVfId('allPage:allForm:changedSubmitPrice')).val('true');
|
} else {
|
j$(escapeVfId('allPage:allForm:changedSubmitPrice')).val('fasle');
|
unblockUI();
|
return false;
|
}
|
}
|
j$(escapeVfId('allPage:allForm:isSaveOrApproval')).val('true');
|
}
|
|
|
return true;
|
// if ((saveBtnDisabled == "true"||saveBtnDisabled == "Pttrue" )&& checkchangedAfterPrint()) {
|
// if (confirm(Confirm_ChangedAfterPrint)) {
|
// if (saveOrApproval == "true") {
|
// j$(escapeVfId('allPage:allForm:isSaveOrApproval')).val('true');
|
// }
|
// return true;
|
// } else {
|
// unblockUI();
|
// return false;
|
// }
|
// } else {
|
// if (saveOrApproval == "true") {
|
// j$(escapeVfId('allPage:allForm:isSaveOrApproval')).val('true');
|
// }
|
// return true;
|
// }
|
}
|
|
function changeEstiStartdate(val) {
|
if ('{!SaveBtnDisabled}' == 'false') {
|
j$(escapeVfId('allPage:allForm:contractstartdate')).val(val);
|
changeContractStartdate(val);
|
}
|
}
|
|
function changeContractStartdate(val) {
|
|
var oldDateStr = j$('#oldContractDate').value();
|
var oldDate = new Date();
|
if (oldDateStr != null && oldDateStr != '') {
|
oldDate = new Date(oldDateStr);
|
}
|
if ('{!DecideBtnDisabled}' == 'false') {
|
var monthStr = '00' + (oldDate.getMonth()+1);
|
monthStr = monthStr.substring(monthStr.length-2, monthStr.length);
|
var dayStr = '00' + oldDate.getDate();
|
dayStr = dayStr.substring(dayStr.length-2, dayStr.length);
|
var oldDateVal = oldDate.getFullYear() + '/' + monthStr + '/' + dayStr;
|
j$(escapeVfId('allPage:allForm:oldDecideContractDate')).val(oldDateVal);
|
if (saveBeforeCheckPriceChange()) {
|
//blockme();
|
//contractStartDateChange();
|
//refreshAsset({!productCount});
|
}
|
refreshAsset({!productCount});
|
} else {
|
var cntWithKara = {!productCount};
|
var haveLine = 'false';
|
for (var i = 0; i < cntWithKara; i++) {
|
var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
|
if (isManual == 'true') {
|
var a = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Assert_lkid'));
|
if (a.size() > 0 && a.val() != "000000000000000") {
|
haveLine = 'true';
|
}
|
} else {
|
haveLine = 'true';
|
}
|
}
|
|
if (haveLine == 'false') {
|
return false;
|
}
|
var contractStartDate = new Date(val);
|
var strCreatedDate = '{!estimate.CreatedDate}';
|
var createDate = new Date();
|
if (strCreatedDate != '') {
|
createDate = new Date(strCreatedDate);
|
}
|
createDate = new Date(createDate.toDateString());
|
var threeMA = new Date(createDate.setMonth(createDate.getMonth() + 3));
|
var isnewMA = new Date(createDate.setMonth(createDate.getMonth() - 3 - isNewAddMonth));
|
|
/*if (oldDate >= isnewMA && contractStartDate >= isnewMA) {
|
return false;
|
}
|
if (oldDate < threeMA && contractStartDate < threeMA) {
|
return false;
|
}
|
|
if (contractStartDate >= isnewMA) {
|
alert('合同开始预定日或合同开始日发生变化并且大于创建日6个月,所有合同对象设备不适用新品价格。\n请在画面刷新后确认服务合同价格,再继续其他操作。');
|
} else if (contractStartDate >= threeMA) {
|
alert('合同开始预定日或合同开始日发生变化并且大于创建日3个月,所有合同对象设备使用【合同开始日】重新计算服务合同价格。\n请在画面刷新后确认服务合同价格,再继续其他操作。');
|
} else {
|
alert('合同开始预定日或合同开始日发生变化并且在创建日3个月以内,所有合同对象设备使用【创建日】重新计算服务合同价格。\n请在画面刷新后确认服务合同价格,再继续其他操作。');
|
}*/
|
j$('oldContractDate').val(val);
|
//blockme();
|
//contractStartDateChange();
|
refreshAsset({!productCount});
|
}
|
}
|
function AlertPriceBtnJs(){
|
|
var VarAlert = j$(escapeVfId('allPage:allForm:alertStringValue')).val();
|
var VarAlert2 = j$(escapeVfId('allPage:allForm:alertStringValue2')).val();
|
var VarAlert3 = j$(escapeVfId('allPage:allForm:alertStringValue3')).val();
|
var PStatus = j$(escapeVfId('allPage:allForm:PriceStatus')).val();
|
blockme();
|
|
if(PStatus!='申请中'&& PStatus!='批准'){
|
ComputeLTYRepair();
|
//ShowLTYRepair();
|
}else if(PStatus == '申请中'||PStatus == '批准'){
|
ShowLTYRepair();
|
}
|
|
}
|
function ComputeLTY() {
|
var urlNameJs = j$(escapeVfId('allPage:allForm:urlName')).val();
|
urlNameJs = '{!$Label.ID_of_SelectAssetEstimate}'+urlNameJs ;
|
var w = window.open(encodeURI(urlNameJs),'过去两年修理实绩','menubar=no,height=720,width=986');
|
w.focus();
|
}
|
function recordNumChangeJs() {
|
recordNumChangeAction();
|
}
|
|
function checkDecideDate() {
|
// 报价有效期
|
var strSubmitDate = '{!estimate.Submit_quotation_day__c}';
|
// 上期合同结束日 取最晚的
|
var conEndDate = getLastContractendDate();
|
conEndDate = new Date(conEndDate);
|
// 今天
|
var submitDate = new Date();
|
var nowDate = new Date();
|
nowDate = new Date(nowDate.toLocaleDateString());
|
/// 报价中设备的机身编码为空时的新品合同有效期延长 20200710 gzw
|
// 默认为3月,全是产品为6月;
|
var monthGap = 6;
|
var cntWithKara = {!productCount};
|
|
for (var i = 0; i < cntWithKara; i++) {
|
var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
|
if (isManual != 'true') {
|
monthGap = 3;
|
break;
|
}
|
}
|
|
|
//nowDate = new Date(nowDate.getYear(),nowDate.getYear(),nowDate.getYear());
|
if (strSubmitDate != '') {
|
submitDate = new Date(strSubmitDate);
|
submitDate = new Date(submitDate.setMonth(submitDate.getMonth() + monthGap));
|
if(Date.parse(conEndDate) > Date.parse(submitDate)){
|
submitDate = new Date(conEndDate);
|
}
|
}
|
//alert(nowDate + '=====' + submitDate);
|
if (strSubmitDate != '' && nowDate > submitDate) {
|
alert('已超出报价申请日'+ monthGap+'个月,不允许DECIDE。');
|
return false;
|
}
|
return true;
|
}
|
|
function getLastContractendDate(){
|
var rowCnt = {!productCount};
|
var lastdate = null;
|
for (var i = 0; i < rowCnt; i++) {
|
var LastMContractID = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContractID')).value();
|
if(!!LastMContractID){
|
var endDate = new Date(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':End_Date')).value());
|
if(lastdate == null){
|
lastdate = new Date(endDate);
|
}else if(Date.parse(endDate) > Date.parse(lastdate)){
|
lastdate = new Date(endDate);
|
}
|
}
|
}
|
return lastdate;
|
}
|
|
|
function decideJs() {
|
if (checkDecideDate() == true) {
|
if (onclickCheckchangedAfterPrint('true','false') == true) {
|
var oldDate = j$(escapeVfId('allPage:allForm:oldDecideContractDate')).value();
|
var contractDate = new Date(j$(escapeVfId('allPage:allForm:contractstartdate')).value());
|
//var olDt = oldDate.getFullYear() + oldDate.getMonth() + oldDate.getDate();
|
var monthStr = '00' + (contractDate.getMonth()+1);
|
monthStr = monthStr.substring(monthStr.length-2, monthStr.length);
|
var dayStr = '00' + contractDate.getDate();
|
dayStr = dayStr.substring(dayStr.length-2, dayStr.length);
|
var contractDateStr = contractDate.getFullYear() + '/' + monthStr + '/' + dayStr;
|
|
//var neDt = contractDate.getFullYear() + contractDate.getMonth() + contractDate.getDate();
|
//monthStr = '00' + (oldDate.getMonth()+1);
|
//monthStr = monthStr.substring(monthStr.length-2, monthStr.length);
|
//dayStr = '00' + oldDate.getDate();
|
//dayStr = dayStr.substring(dayStr.length-2, dayStr.length);
|
//oldDateVal = oldDate.getFullYear() + '/' + monthStr + '/' + dayStr;
|
if (oldDate == contractDateStr) {
|
j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('false');
|
decide();
|
} else {
|
var oldp = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:oldMainteReal')).value());
|
var newp = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:mainteReal')).text());
|
|
if (oldp != newp) {
|
// 20201106 高章伟 提醒消息修改 start
|
j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('true');
|
if (confirm('合同金额发生变化,请您确认。')) {
|
decide();
|
} else {
|
alert('请确认全部内容后点击Decide。');
|
j$(escapeVfId('allPage:allForm:contractstartdate')).val(oldDate);
|
j$(escapeVfId('allPage:allForm:oldDecideContractDate')).val('');
|
j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('false');
|
decideCancle();
|
}
|
} else {
|
j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('false');
|
decide();
|
// j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('false');
|
// if (confirm('本次合同开始日的修改不会导致合同金额发生变化,请您确认是否修改?')) {
|
// decide();
|
// } else {
|
// j$(escapeVfId('allPage:allForm:contractstartdate')).val(oldDate);
|
// alert('合同开始日未进行变更,请确认全部内容后点击Decide。');
|
// unblockUI();
|
// }
|
}
|
// 20201106 高章伟 提醒消息修改 end
|
}
|
}
|
}
|
}
|
// 获取实际报价金额 按照上限比例算
|
function getEstimateCost() {
|
// 行数
|
var rowcount = {!productCount};
|
// 6.合同价格
|
var mainteReal = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:mainteReal')).text();
|
mainteReal = localParseFloat(mainteReal);
|
// 5.修理总额
|
var assetRepairSumPrice = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:assetRepairSumPrice')).text();
|
assetRepairSumPrice = localParseFloat(assetRepairSumPrice);
|
// 计算实际报价总金额
|
var realprice = mainteReal - assetRepairSumPrice;
|
// 标准价格的最高价总额
|
var GuidePriceUp = localParseFloat(j$(escapeVfId('allPage:allForm:allBlock:contractInfo:GuidePriceUpHidden')).val());
|
GuidePriceUp = localParseFloat(GuidePriceUp);
|
for (var i = 0; i < rowcount; i++) {
|
// 去上限价格
|
var assetListPrice = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Adjustment_Upper_priceHidden')).val();
|
assetListPrice = localParseFloat(assetListPrice);
|
if(GuidePriceUp == 0){
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Estimate_Cost')).val(0);
|
}else{
|
var Estimate_Cost = (realprice * (assetListPrice / GuidePriceUp)).toFixed(2);
|
j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Estimate_Cost')).val(Estimate_Cost);
|
}
|
|
|
}
|
}
|
|
function getLastContractRate(){
|
var rowCnt = {!productCount};
|
var Contractrate = 0.00;
|
var count = 0;
|
for (var i = 0; i < rowCnt; i++) {
|
var LastMContractID = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':LastMContractID')).value();
|
if(!!LastMContractID){
|
var tempContractrate = parseFloat(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':Contractrate')).value().replace(/,/g,''));
|
if(!!tempContractrate){
|
Contractrate = Contractrate + tempContractrate;
|
}
|
count++;
|
}
|
}
|
var allContractRate = '' + 0.00 + '%';
|
if( count > 0){
|
allContractRate = '' + (Contractrate/count).toFixed(2) + '%';
|
}
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:Combinedrate')).text(allContractRate);
|
j$(escapeVfId('allPage:allForm:allBlock:contractInfo:CombinedrateHidden')).val(parseFloat(allContractRate));
|
|
return allContractRate;
|
}
|
function calculateNtoMRatio(lastContRange, month ){
|
var lastContRangeYear = Math.ceil(localParseFloat(lastContRange)/12);
|
var currentMonthYear = Math.ceil(localParseFloat(month)/12);
|
//if(!lastendDate || currentMonthYear <= lastContRangeYear){
|
if(currentMonthYear == lastContRangeYear || currentMonthYear == 1){
|
return month;
|
}else if(month <= 24) {
|
return 12+ (month- 12) *1.1;
|
}else if(month <= 36) {
|
return 25.2 + (month- 24) *1.21;
|
}else if(month <= 48) {
|
return 39.72 + (month- 36) *1.331;
|
}else if(month <= 60) {
|
return 55.692 + (month- 48) *1.4641;
|
}else {
|
alert('合同期最长只能选择60个月!');
|
return 0;
|
}
|
|
}
|
|
//获取经销商的先款标识
|
function onChDealerUpdateJs(oBj){
|
//获取 报价提交对象 是否为经销商
|
var estimateTarget = j$(escapeVfId('allPage:allForm:allBlock:contract:estimateTarget'))[0].value;
|
if(estimateTarget == '经销商'){
|
//判断经销商名是否为空
|
var dealerValue = j$(escapeVfId('allPage:allForm:allBlock:contract:dealer')).val();
|
if(dealerValue != ''){
|
//获取经销商名的id
|
var dealerId = j$(escapeVfId('allPage:allForm:allBlock:contract:dealer_lkid')).val();
|
//由于salesforce的查找字段是可以输入的,所以判断他如果为空或者为 000000000000000 的时候,传的参数就位经销商中文名,其他情况传id
|
if(dealerId != '' && dealerId != '000000000000000'){
|
onChDealerUpdate(dealerId);
|
}else{
|
onChDealerUpdate(dealerValue);
|
}
|
}else{
|
onChDealerUpdate('');
|
//j$(escapeVfId('allPage:allForm:allBlock:contract:FirstParagraphEnd'))[0].checked = false;
|
}
|
}
|
}
|
//如果选择的经销商为先款对象,那么做一下提示
|
function hintAccount(){
|
var xkChecked = j$(escapeVfId('allPage:allForm:allBlock:contract:FirstParagraphEnd'))[0].checked;
|
if(xkChecked){
|
alert('请注意,当前经销商为先款对象。');
|
}
|
}
|
|
//LJPH-C9SCX7 【委托】合同无空白期的提醒 lt 20211221 start
|
//合同开始日预定日默认为上期合同1结束日的第2天
|
// function DefaultStartDate(){
|
// //上期合同1结束日
|
// var LastContractEndDate;
|
// var LastContractEndDate2; //日期格式
|
// var cnt = j$(escapeVfId('allPage:allForm:allBlock:assetSection:productCnt')).val();
|
// for (var i = 0; i < cnt; i++){
|
// LastContractEndDate = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':End_Date')).value();
|
// //或者换隐藏标签Maintenance_Contract__r.Past_Contract_end_day__c
|
// LastContractEndDate2 = LastContractEndDate;
|
// if(LastContractEndDate != null && LastContractEndDate != ''){
|
// break;
|
// }
|
// }
|
|
// if(LastContractEndDate != null && LastContractEndDate != ''){
|
// //上期合同1结束日的第2天
|
// LastContractEndDate += " 00:00:00";//设置为当天凌晨12点
|
// LastContractEndDate = Date.parse(new Date(LastContractEndDate))/1000;//转换为时间戳
|
// LastContractEndDate += (86400) * 1;//修改后的时间戳
|
// var newDate = new Date(parseInt(LastContractEndDate) * 1000);//转换为时间
|
// var LastContractEndDate1 = newDate.getFullYear() + '/' + (newDate.getMonth() + 1) + '/' + newDate.getDate();;
|
|
// //获取当前日期(currentdate)
|
// var date1 = new Date();
|
// var seperator = "/";
|
// var year = date1.getFullYear();
|
// var month = date1.getMonth() + 1;
|
// var day = date1.getDate();
|
// if (month >= 1 && month <= 9) {
|
// month = "0" + month;
|
// }
|
// if (day >= 0 && day <= 9) {
|
// day = "0" + day;
|
// }
|
// var currentdate = year + seperator + month + seperator + day;
|
|
// //上期合同尚未结束 , 开始预定日
|
// if(currentdate < LastContractEndDate2){
|
// document.getElementById("allPage:allForm:allBlock:contract:startdate").value = LastContractEndDate1;
|
// }
|
// }
|
|
// }
|
//LJPH-C9SCX7 【委托】合同无空白期的提醒 lt 20211221 end
|
|
</script>
|
<apex:form id="allForm">
|
<apex:inputHidden id="alertStringValue" value="{!alertString}" />
|
<apex:inputHidden id="alertStringValue2" value="{!alertString2}" />
|
<apex:inputHidden id="alertStringValue3" value="{!alertString3}" />
|
<apex:inputHidden id="PriceStatus" value="{!estimate.Process_Status__c}"/>
|
<apex:inputHidden id="urlName" value="{!estimate.Name}"/>
|
<apex:inputHidden id="changedAfterPrint" value="{!changedAfterPrint}"/>
|
<apex:inputHidden id="changedSubmitPrice" value="{!changedSubmitPrice}"/>
|
<apex:inputHidden id="isSaveOrApproval" value="{!isSaveOrApproval}"/>
|
|
<!-- HWAG-B4R3SS START 20181026-->
|
<apex:actionFunction name="searchfunc" action="{!searchBtn}" rerender="Form,Block,assetSection2,pageMessages,allBlock" onComplete="unblockUI();"></apex:actionFunction>
|
<!-- HWAG-B4R3SS END 20181026-->
|
<apex:actionFunction name="ComputeLTYRepair" action="{!ComputeLTYRepair}" rerender="pageMessages" oncomplete="unblockUI();ComputeLTY();"/>
|
<apex:actionFunction name="ShowLTYRepair" action="{!ShowLTYRepair}" oncomplete="unblockUI();ComputeLTY();"/>
|
<apex:actionFunction name="decide" action="{!decide}" rerender="allForm" oncomplete="unblockUI();"/>
|
<apex:actionFunction name="decideCancle" action="{!decideCancle}" rerender="allForm" oncomplete="unblockUI();"/>
|
<apex:inputHidden id="oldDecideContractDate" value="{!OldContractStartDate}" />
|
<!-- 经销商发生变化的change时间 -->
|
<apex:actionFunction name="onChDealerUpdate" action="{!onChDealerUpdate}" rerender="contract" onComplete="hintAccount();">
|
<apex:param name="checkDealerId" assignTo="{!checkDealerId}" value="" />
|
</apex:actionFunction>
|
<input type="hidden" id="oldContractDate" value="{!estimate.Contract_Start_Date__c}" />
|
<script type="text/javascript">
|
//j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('false');
|
</script>
|
<apex:pageBlock title="服务合同报价" id="allBlock">
|
<apex:pageBlockButtons id="blocktop" location="top">
|
<apex:commandButton id="savebtntop" action="{!save}" value="{!$Label.Save_Button}" disabled="{!SaveBtnDisabled}" rerender="allForm" onclick="if (!EGFlgconfim()) return false;" oncomplete="unblockUI();"/>
|
<!-- <apex:commandButton id="LastTwoYearRepairShow" value="过去两年维修实绩Repaort" action="{!ShowLTYRepair}" rerender="alertStringValue,alertStringValue2,alertStringValue3" oncomplete="AlertPrice();"/> -->
|
<apex:commandButton id="LastTwoYearRepairComp" value="过去三年维修实绩计算" rerender="PriceStatus" onclick="AlertPriceBtnJs()"/>
|
<apex:commandButton id="approvalbtntop" action="{!approvalProcess}" value="提交待审批" disabled="{!ApprovalBtnDisabled}" rerender="allForm" onclick="if (!KindsAndMonths()) return false;if (!EGFlgconfim()) return false;approvalJs();" oncomplete="unblockUI();"/>
|
<!-- HWAG-B399Q8 2018/08/20 新增请提交待审批 提示字段 start-->
|
<apex:outputText style="color:red;font-size:20px" value="请提交待审批" rendered="{!IS_Clone_After_Decide}"/>
|
<!-- HWAG-B399Q8 2018/08/20 新增请提交待审批 提示字段 end-->
|
<apex:commandButton action="{!cancel}" value="不保存(返回)" style="float:right;" rerender="allForm" onclick="blockme();" oncomplete="unblockUI();"/>
|
<apex:commandButton id="saveAndCancelBtn" action="{!saveAndCancel}" value="保存(返回)" style="float:right;" rerender="allForm" oncomplete="unblockUI();" onclick="if (!onclickCheckchangedAfterPrint('true','true')) return false;" disabled="{!SaveBtnDisabled}"/>
|
</apex:pageBlockButtons>
|
|
<apex:pageMessages id="pageMessages"></apex:pageMessages>
|
<!-- update 合同报价页面的优化 添加‘assetSection’ fxk 2021/9/10 Star-->
|
<apex:actionFunction name="refreshProductData" action="{!refreshProductData}" rerender="pageMessages,EquipmentGuaranteeFlg,EGFlgassHidden,EquipmentGuaranteeFlgtxt, assetListPriceHidden, productCount3,assetSection" oncomplete="refreshAsset({!productCount});unblockUI();">
|
<apex:param assignTo="{!productIdx}" name="productIdx" value=""/>
|
</apex:actionFunction>
|
<!-- update 合同报价页面的优化 添加‘assetSection’ fxk 2021/9/10 End-->
|
<!--<apex:actionFunction name="contractStartDateChange" action="{!contractStartDateChange}" rerender="allForm" oncomplete="unblockUI();">
|
</apex:actionFunction>-->
|
|
<apex:actionFunction name="recordNumChangeAction" action="{!recordNumChange}" rerender="allForm" oncomplete="unblockUI();">
|
</apex:actionFunction>
|
|
<!-- update by rentx 2020-11-17 -->
|
<!-- <apex:pageblocksection title="服务合同" id="contract"> -->
|
<!-- <apex:outputField value="{!estimate.Name}"/> -->
|
<!-- <apex:outputField value="{!contract.Management_Code__c}" /> -->
|
<!-- <apex:outputField value="{!estimate.Process_Status__c}"/> -->
|
<!-- <apex:outputField value="{!contract.Status__c}"/> -->
|
<!-- <apex:outputField value="{!contract.Hospital__c}" /> -->
|
<!-- <apex:inputField value="{!estimate.Department__c}" id="depart"/> -->
|
<!-- <apex:inputField value="{!estimate.Contract_Esti_Start_Date__c}" required="true" id="startdate" onchange="changeEstiStartdate(this.value);"/>onchange="checkContractEstiStartDate(this.value, {!productCount})" -->
|
<!-- <apex:inputField value="{!estimate.Contract_Range__c}" required="true" id="monthRange" onchange="checkContractRange(this.value, {!productCount})"/> -->
|
<!-- <apex:inputField style="width:3px;height:15px;background-color:#cc0000; position:absolute;margin-right:5px;"> -->
|
<!-- <div><div style="width:2px;height:20px;background-color:red; position:absolute;margin-right:5px;"></div></div> -->
|
<!-- <apex:inputField value="{!estimate.Contract_Range__c}" required="false" id="monthRange" onchange="checkContractRange(this.value, {!productCount})"/> -->
|
<!-- </apex:inputField> -->
|
|
<!-- <apex:outputField value="{!estimate.Contract_Esti_End_Date__c}"/> -->
|
<!-- <apex:outputField label="制定日" value="{!estimate.CreatedDate}" id="createDateShow"/> -->
|
|
<!-- <apex:outputPanel > -->
|
<!-- <label class="labelCol vfLabelColTextWrap " style="margin-left:22%">报价提交对象</label> -->
|
<!-- <apex:inputField value="{!estimate.Estimate_Target__c}" id="estimateTarget" onchange="resetDealer()" style="margin-left:5px"/> -->
|
|
<!-- <apex:outputPanel rendered="{!DecideBtnDisabled==false}"> -->
|
<!-- <input type="button" class="btn" value="变更" onclick="controlDisabled()" style="margin-left:20px;width:40px;padding:0 0;"/> -->
|
<!-- </apex:outputPanel> -->
|
<!-- <apex:outputPanel rendered="{!DecideBtnDisabled==true}"> -->
|
<!-- <input type="button" class="btnDisabled" value="变更" disabled="true" onclick="controlDisabled()" style="margin-left:20px;width:40px;padding:0 0;"/> -->
|
<!-- </apex:outputPanel> -->
|
<!-- </apex:outputPanel> -->
|
|
<!-- <apex:inputField value="{!estimate.Dealer__c}" id="dealer" /> -->
|
<!-- <apex:inputField value="{!estimate.EndUserType__c}" id="EndUserType" /> -->
|
<!-- <script type="text/javascript"> -->
|
<!-- j$(escapeVfId('allPage:allForm:allBlock:contract:estimateTarget')).children('option[value=]').remove(); -->
|
<!-- resetDealer(); -->
|
<!-- </script> -->
|
<!-- </apex:pageblocksection> -->
|
<apex:pageBlockSection title="服务合同" id="contract">
|
<!-- <apex:outputPanel/> -->
|
<apex:outputPanel >
|
<table align="center" width="100%" style="border-collapse:separate; border-spacing:0px 10px" >
|
<tr>
|
<td width="50%" align="right"> <label class="labelCol vfLabelColTextWrap " style="margin-left:22%">报价编码</label> </td>
|
<td width="50%" align="left"> <apex:outputField value="{!estimate.Name}"/> </td>
|
</tr>
|
<tr>
|
<td width="50%" align="right"> <label class="labelCol vfLabelColTextWrap " style="margin-left:22%">报价状态</label> </td>
|
<td width="50%" align="left"> <apex:outputField value="{!estimate.Process_Status__c}"/> </td>
|
</tr>
|
<tr>
|
<td width="50%" align="right"> <label class="labelCol vfLabelColTextWrap " style="margin-left:22%">医院</label> </td>
|
<td width="50%" align="left"> <apex:outputField value="{!contract.Hospital__c}" /> </td>
|
</tr>
|
<tr>
|
<td width="50%" align="right"> <label class="labelCol vfLabelColTextWrap " style="margin-left:22%">合同开始预订日</label> </td>
|
<td width="50%" align="left"> <apex:inputField value="{!estimate.Contract_Esti_Start_Date__c}" required="true" id="startdate" onchange="changeEstiStartdate(this.value);"/>
|
</td>
|
</tr>
|
<tr>
|
<td width="50%" align="right"><label class="labelCol vfLabelColTextWrap " style="margin-left:22%">合同结束预订日</label> </td>
|
<td width="50%" align="left"> <apex:outputField value="{!estimate.Contract_Esti_End_Date__c}"/> </td>
|
</tr>
|
<tr>
|
<td align="right">
|
<label class="labelCol vfLabelColTextWrap " style="margin-left:22%">报价提交对象</label>
|
<td>
|
<apex:outputPanel >
|
<apex:inputField value="{!estimate.Estimate_Target__c}" id="estimateTarget" onchange="resetDealer()" style="margin-left:5px"/>
|
<apex:outputPanel rendered="{!DecideBtnDisabled==false}">
|
<input type="button" class="btn" value="变更" onclick="controlDisabled()" style="margin-left:20px;width:40px;padding:0 0;"/>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!DecideBtnDisabled==true}">
|
<input type="button" class="btnDisabled" value="变更" disabled="true" onclick="controlDisabled()" style="margin-left:20px;width:40px;padding:0 0;"/>
|
</apex:outputPanel>
|
</apex:outputPanel>
|
</td>
|
</td>
|
</tr>
|
<tr>
|
<td align="right"> <label class="labelCol vfLabelColTextWrap " style="margin-left:22%"> 用户类型</label></td>
|
<td align="left">
|
<apex:outputField value="{!estimate.EndUserType__c}" id="EndUserType" />
|
</td>
|
<td> </td>
|
</tr>
|
</table>
|
</apex:outputPanel>
|
<apex:outputPanel >
|
|
<table align="center" width="100%" style="border-collapse:separate; border-spacing:0px 10px" >
|
<tr>
|
<td width="50%" align="right"> <label class="labelCol vfLabelColTextWrap " style="margin-left:22%">合同询价编码</label> </td>
|
<td width="50%" align="left"> <apex:outputField value="{!contract.Management_Code__c}" /> </td>
|
</tr>
|
<tr>
|
<td width="50%" align="right"> <label class="labelCol vfLabelColTextWrap " style="margin-left:22%">状态</label> </td>
|
<td width="50%" align="left"> <apex:outputField value="{!contract.Status__c}"/> </td>
|
</tr>
|
<tr>
|
|
<td width="50%" align="right"> <label class="labelCol vfLabelColTextWrap " style="margin-left:22%">科室</label> </td>
|
<td width="50%" align="left"> <apex:inputField value="{!estimate.Department__c}" id="depart"/> </td>
|
</tr>
|
<tr>
|
|
|
<td width="50%" align="right">
|
<label class="labelCol vfLabelColTextWrap " style="margin-left:22%">合同月数</label> </td>
|
<td width="50%" align="left">
|
<div style="width:3px;height:20px;background-color:#cc0000; position:absolute;margin-right:5px" />
|
<apex:inputField value="{!estimate.Contract_Range__c}" required="false" id="monthRange"
|
onchange="checkContractRange(this.value, {!productCount})"
|
/>
|
</td>
|
</tr>
|
<tr>
|
|
<td width="50%" align="right"> <label class="labelCol vfLabelColTextWrap " style="margin-left:22%">制定日</label></td>
|
<td width="50%" align="left"> <apex:outputField label="制定日" value="{!estimate.CreatedDate}" id="createDateShow"/> </td>
|
</tr>
|
<tr>
|
|
<td width="50%" align="right">
|
<label class="labelCol vfLabelColTextWrap " style="margin-left:30%"> 经销商名</label></td>
|
<!-- update wangweipeng 2021/12/04 start -->
|
<td width="50%" align="left"> <apex:inputField value="{!estimate.Dealer__c}" id="dealer" onchange="onChDealerUpdateJs(this);return false;" style="float: left;"/> </td>
|
</tr>
|
<tr>
|
<td width="50%" align="right">
|
<label class="labelCol vfLabelColTextWrap " style="margin-left:30%"> 先款标识(经销商)</label></td>
|
<td width="50%" align="left" > <apex:inputCheckbox value="{!estimate.Is_RecognitionModel__c}" id="FirstParagraphEnd" onClick="return false;" /> </td>
|
</tr>
|
<!-- update wangweipeng 2021/12/04 end -->
|
</table>
|
<script type="text/javascript">
|
j$(escapeVfId('allPage:allForm:allBlock:contract:estimateTarget')).children('option[value=]').remove();
|
resetDealer();
|
</script>
|
</apex:outputPanel>
|
</apex:pageBlockSection>
|
|
<!-- update by rentx 2020-11-17 end -->
|
|
<apex:pageblocksection columns="1" title="合同对象设备" id="assetSection" >
|
<apex:outputLabel />
|
<apex:outputPanel >
|
<input type="hidden" id="allPage:allForm:allBlock:assetSection:productCnt" value="{!productCount}" />
|
<!-- <table width="100%">
|
<tr>
|
<td> </td>
|
<td width="100px"><span>全</span>
|
<select style="vertical-align:text-bottom" id="allCheckResult" size="1" onchange="changeAllCheckResult(this.value)">
|
<option value=" ">--无--</option>
|
<option value="OK">OK</option>
|
<option value="NG">NG</option>
|
</select>
|
</td>
|
<td width="150px"> </td>
|
</tr>
|
</table> -->
|
<!-- <div id = 'aaaa' class="slds-scrollable_x" style="width:450px">
|
<div class="slds-table--header-fixed_container" style="height:450px;width:850px">
|
<div class="slds-scrollable_y" style="height:100%;width:850px"> -->
|
<div style="width: 100%">
|
<table class="list" style="border-bottom-width: 0px; font-size:13px;" border="0" cellspacing="0" cellpadding="0">
|
<tr class="headerRow" height="30px">
|
<th style="width:25px" class="headerRow booleanColumn"><input type='checkbox' onClick='checkAll(this)'/></th>
|
<th class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Name.label}</th>
|
<th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Asset_situation__c.label}</th>
|
<th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.SerialNumber.label}</th>
|
<th class="headerRow booleanColumn">{!$ObjectType.Asset.fields.EGFlg_fromContract_asset__c.label}</th>
|
<th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.InstallDate.label}</th>
|
<!--add点检改善:新增一个点检对象复选框字段,默认为true 2021.6.8 fxk Star-->
|
<th style="width:70px" class="headerRow booleanColumn">
|
{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Check_Object__c.label}</th>
|
<!--add点检改善:新增一个点检对象复选框字段,默认为true 2021.6.8 fxk end-->
|
<th style="width:40px" class="headerRow booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.IsNew__c.label}</th>
|
<th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Department_Name__c.label}</th>
|
|
<th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Management_Code__c.label}</th>
|
<th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Asset_Consumption_rate__c.label}</th>
|
<th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.CurrentContract_End_Date__c.label}</th>
|
<!-- 实绩联动价格计算 start -->
|
<th style="width:35px" class="headerRow booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Adjustment_Upper_price__c.label}</th>
|
<th style="width:35px" class="headerRow booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Adjustment_Lower_price__c.label}</th>
|
<!-- 实绩联动价格计算 end -->
|
<!-- 隐藏合同月数
|
<th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Maintenance_Contract__c.fields.Contract_Range__c.label}</th>-->
|
|
|
|
|
|
|
|
|
<!-- <th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Asset_Owner__c.label}</th>
|
<th style="width:90px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Accumulation_Repair_Amount__c.label}</th>
|
<th style="width:90px" class="headerRow booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Estimate_List_Price_All__c.label}</th>
|
<th style="width:90px" class="headerRow booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Maintenance_Price_YearTXT__c.label}</th>-->
|
<th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Repair_Price__c.label}</th>
|
<th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Comment__c.label}</th>
|
</tr>
|
|
<apex:variable value="{!1}" var="cnt" />
|
<apex:repeat value="{!checkedAssets}" var="ar" id="assetTable">
|
<tr class="dataRow {!IF(MOD(cnt, 2)==0, 'odd', 'even')} {!IF(cnt==1, 'first', '')}" onmouseover="if (window.hiOn){hiOn(this);} " onmouseout="if (window.hiOff){hiOff(this);} " onblur="if (window.hiOff){hiOff(this);}" onfocus="if (window.hiOn){hiOn(this);}">
|
<td class="dataCell" width="25px">
|
<apex:inputCheckbox value="{!ar.rec_checkBox_c}" id="assetRowCheckbox" rendered="{!Not(ar.IsManual)}" disabled="{!PageDisabled}"/>
|
<apex:outputText value="{!ar.IsManual}" id="IsManual" style="display:none;" />
|
<!-- 判断是否可报价 -->
|
<!-- <input type="hidden" value="{!ar.estimateass}" id="allPage:allForm:allBlock:assetSection:assetTable:{!Text(cnt-1)}:estimateass"/> -->
|
<!-- <apex:inputCheckbox value="{!ar.estimateass}" id="estimateass" style="display:none;" /> -->
|
</td>
|
<td class="dataCell">
|
<apex:outputField value="{!ar.rec.Name}" id="assetName" rendered="{!Not(ar.IsManual)}" />
|
<apex:inputField value="{!ar.mcae.Product_Manual__c}" id="Assert" style="width:90%;" rendered="{!ar.IsManual}" onchange="blockme();refreshProductData({!ar.lineNo});"/>
|
<apex:inputText id="ProductId" value="{!ar.mcae.Product_Manual__c}" style="display:none;" disabled="true"/>
|
</td>
|
<td class="dataCell" width="70px">
|
<apex:outputField value="{!ar.rec.Asset_situation__c}" rendered="{!Not(ar.IsManual)}" />
|
</td>
|
<td class="dataCell" width="70px">
|
<apex:outputLink value="/{!ar.recId}" rendered="{!Not(ar.IsManual)}" >{!ar.rec.SerialNumber}</apex:outputLink>
|
<apex:inputHidden id="AssetId" value="{!ar.recId}"/>
|
<apex:inputField value="{!ar.rec.isNewDate_use__c}" id="isNewDate" style="display: none" showDatePicker="false"/>
|
</td>
|
<td class="dataCell" >
|
<apex:outputField value="{!ar.mcae.EquipmentGuaranteeFlgTxt__c}" id="EquipmentGuaranteeFlgtxt"/>
|
<apex:outputText value="{!ar.mcae.EquipmentGuaranteeFlgTxt__c}" id="EquipmentGuaranteeFlg" style="display:none;"/>
|
<apex:inputHidden id="EGFlgassHidden" value="{!ar.etGFlg}"/>
|
</td>
|
<td class="dataCell" width="70px" style="text-align:center" >
|
<apex:outputField value="{!ar.rec.InstallDate}" id="InstallDate" rendered="{!Not(ar.IsManual)}" />
|
</td>
|
<!--add点检改善:新增一个点检对象复选框字段,默认为true 2021.6.8 fxk Star-->
|
<td class="dataCell" width="70px" style="text-align:center" >
|
<apex:inputCheckbox value="{!ar.mcae.Check_Object__c}" id="assetCheck" disabled="{!ar.CheckRows}"/>
|
</td>
|
<!--add点检改善:新增一个点检对象复选框字段,默认为true 2021.6.8 fxk end-->
|
<td class="dataCell" width="40px" style="text-align:center" >
|
<apex:inputCheckbox value="{!ar.mcae.IsNew__c}" id="assetNew" disabled="true"/>
|
<apex:outputPanel layout="none" rendered="{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.createable}" >
|
<apex:inputHidden value="{!ar.mcae.IsNew__c}" id="assetNewHidden" />
|
</apex:outputPanel>
|
<apex:outputPanel layout="none" rendered="{!Not($ObjectType.Maintenance_Contract_Asset_Estimate__c.createable)}" >
|
<input type="hidden" value="{!ar.mcae.IsNew__c}" id="allPage:allForm:allBlock:assetSection:assetTable:{!Text(cnt-1)}:assetNewHidden" />
|
</apex:outputPanel>
|
<apex:outputText value="{!ar.rec.Final_Examination_Date__c}" id="finalExaminationDate" rendered="{!Not(ar.IsManual)}" style="display:none"/>
|
</td>
|
<td class="dataCell" width="70px" >
|
<apex:outputField value="{!ar.rec.Department_Name__c}" rendered="{!Not(ar.IsManual)}" />
|
</td>
|
|
<td class="dataCell" width="70px">
|
<apex:outputField value="{!ar.rec.CurrentContract_F__r.Maintenance_Contract_No_F__c}" rendered="{!Not(ar.IsManual)}" id="Contract_No"/>
|
<apex:inputHidden value="{!ar.rec.CurrentContract_F__r.RecordType_DeveloperName__c}" id="LastMContractRecord"/>
|
<apex:inputField value="{!ar.rec.CurrentContract_F_asset__r.endDateGurantee_Text__c}" id="endDateGurantee_Text" style="display: none" showDatePicker="false"/>
|
<apex:inputHidden value="{!ar.rec.CurrentContract_F__c}" id="LastMContractID"/>
|
</td>
|
<td class="dataCell" width="90px" style="text-align:right" >
|
<apex:outputField value="{!ar.mcae.Asset_Consumption_rate__c}" rendered="{!Not(ar.IsManual)}" id="Contractrate"/>
|
<apex:inputHidden value="{!ar.rec.CurrentContract_F__r.Contract_Range__c}" id="lastContRange"/>
|
</td>
|
<td class="dataCell" width="70px">
|
<apex:outputField value="{!ar.rec.CurrentContract_F__r.Contract_End_Date__c}" rendered="{!(Not(ar.IsManual)&& ar.rec.CurrentContract_F__c != null)}" id="End_Date" />
|
</td>
|
<!-- 实绩联动价格计算 start -->
|
<td class="dataCell" width="35px">
|
<apex:outputText value="{!ar.mcae.Adjustment_Upper_price__c}" id="Adjustment_Upper_price"/>
|
<apex:inputHidden value="{!ar.mcae.Adjustment_Upper_price__c}" id="Adjustment_Upper_priceHidden"/>
|
<apex:inputHidden value="{!ar.mcae.Adjustment_ratio_Upper__c}" id="Adjustment_ratio_Upper"/>
|
</td>
|
<td class="dataCell" width="35px" >
|
<apex:outputText value="{!ar.mcae.Adjustment_Lower_price__c}" id="Adjustment_Lower_price"/>
|
<apex:inputHidden value="{!ar.mcae.LastMContract_Price__c}" id="LastMContract_Price"/>
|
<apex:inputHidden value="{!ar.mcae.Adjustment_ratio_Lower__c}" id="Adjustment_ratio_Lower"/>
|
<apex:inputHidden value="{!ar.mcae.Adjustment_Lower_price__c}" id="Adjustment_Lower_priceHidden"/>
|
<apex:outputPanel layout="none" rendered="{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.createable}" >
|
<apex:inputHidden value="{!ar.mcae.Estimate_List_Price__c}" id="assetListPriceHidden"/>
|
<apex:inputHidden value="{!ar.mcae.Estimate_List_Price_Page__c}" id="assetListPricePageHidden" />
|
<apex:inputHidden value="{!ar.rec.CurrentContract_F__r.Estimate_Num__c}" id="Estimate_NumHidden" />
|
</apex:outputPanel>
|
|
<apex:outputPanel layout="none" rendered="{!Not($ObjectType.Maintenance_Contract_Asset_Estimate__c.createable)}" >
|
<input type="hidden" value="{!ar.mcae.Estimate_List_Price__c}" id="allPage:allForm:allBlock:assetSection:assetTable:{!Text(cnt-1)}:assetListPriceHidden"/>
|
<input type="hidden" value="{!ar.rec.CurrentContract_F__r.Estimate_Num__c}" id="allPage:allForm:allBlock:assetSection:assetTable:{!Text(cnt-1)}:Estimate_NumHidden"/>
|
</apex:outputPanel>
|
<!-- 20200103 Gzw 计算实际报价金额 start -->
|
<apex:inputHidden value="{!ar.mcae.Estimate_Cost__c}" id="Estimate_Cost"/>
|
<!-- 20200103 Gzw 计算实际报价金额 end -->
|
|
</td>
|
<td class="dataCell" width="70px" style="text-align:right" >
|
<apex:inputField value="{!ar.mcae.Repair_Price__c}" id="repairPrice" style="ime-mode: disabled; width:95%; text-align:right;" onchange="refreshAsset({!productCount});"/>
|
</td>
|
<td class="dataCell" width="70px" style="text-align:right" >
|
<apex:inputField value="{!ar.mcae.Comment__c}" id="comment" style="width:95%;"/>
|
</td>
|
</tr>
|
|
<!-- LJPH-C9SCX7 【委托】合同无空白期的提醒 lt 20211221 start -->
|
<!-- <script>
|
DefaultStartDate();
|
</script> -->
|
<!-- LJPH-C9SCX7 【委托】合同无空白期的提醒 lt 20211221 end -->
|
|
<apex:variable value="{!cnt + 1}" var="cnt" />
|
</apex:repeat>
|
|
</table>
|
</div>
|
<!-- </div>
|
</div> -->
|
</apex:outputPanel>
|
</apex:pageblocksection>
|
<!-- HWAG-B4R3SS START 20181026-->
|
<apex:outputPanel id="sumPanel" onkeydown="if(event.keyCode==13){searchJs(); return false;}">
|
<!-- HWAG-B4R3SS END 20181026-->
|
<table style="width:100%;">
|
<tr>
|
|
<td>
|
<apex:commandButton value="行追加" action="{!addNewRows}" disabled="{!Not($ObjectType.Maintenance_Contract_Asset_Estimate__c.createable) || PageDisabled}"
|
style="margin-left:10px;float:left;" onclick="blockme();" oncomplete="unblockUI();" rerender="allForm" />
|
<apex:commandButton value="刷新选中的保有设备" disabled="{!SaveBtnDisabled || productCount2==0}" action="{!exchangeAsset}" onclick="blockme();" oncomplete="unblockUI();refreshAsset({!productCount});" rerender="allForm" />
|
|
<!-- HWAG-B4R3SS START 20181026-->
|
<apex:outputText value="选择条件"/>
|
|
<apex:selectList value="{!text1}" id="text1" size="1" style="width:80px"><apex:selectOptions value="{!textOpts}"/>
|
</apex:selectList>
|
|
<apex:selectList value="{!cond1}" id="cond1" size="1" style="width:80px">
|
<apex:selectOptions value="{!equalOpts}"/>
|
</apex:selectList>
|
|
<!-- LJPH-BSS6E2 ---20200911 ---update by rentongxiao start -->
|
|
<apex:inputText value="{!val1}"
|
id="val1" style="width:100px; background-color:{!IF(contr == '1','#e3f3ff','white')}"/>
|
<!-- LJPH-BSS6E2 ---20200911 ---update by rentongxiao end -->
|
|
<apex:commandButton value="检索" onclick="searchJs();" style="width:100px" rerender="dummy"/>
|
|
<apex:commandButton value="清除条件" onclick="clearAndSearch();" style="width:100px" rerender="dummy"/>
|
<!-- HWAG-B4R3SS END 20181026-->
|
</td>
|
<th width="90px" style="text-align:right"></th>
|
<th width="90px" style="text-align:right"></th>
|
|
<th width="90px" style="text-align:right">设备数量</th>
|
<td width="90px" style="text-align:right"><apex:outputtext value="{!productCount3}" id="productCount3"/></td>
|
<td width="25px"> </td>
|
<!--<th width="90px" style="text-align:right">报价总额</th>
|
<th width="90px" style="text-align:right"><span id="allPage:allForm:allBlock:assetListSumNum" ></span></th>-->
|
<td width="25px"> </td>
|
<th width="90px" style="text-align:right">修理总额</th>
|
<th width="90px" style="text-align:right"><span id="allPage:allForm:allBlock:assetRepairSumNum" ></span></th>
|
<td width="95px"> </td>
|
</tr>
|
|
</table>
|
</apex:outputPanel>
|
|
<apex:pageblocksection columns="1" title="未选择的保有设备" id="assetSection2" >
|
<apex:outputLabel />
|
<apex:outputPanel >
|
<input type="hidden" id="allPage:allForm:allBlock:assetSection2:productCnt2" value="{!productCount2}" />
|
<table class="list" style="border-bottom-width: 0px; font-size:13px;" border="0" cellspacing="0" cellpadding="0">
|
<tr class="headerRow" height="30px">
|
<th style="width:25px" class="headerRow booleanColumn"><input type='checkbox' onClick='checkAll2(this)'/></th>
|
<th style="width:25%" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Name.label}</th>
|
<th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Asset_situation__c.label}</th>
|
<th style="width:70px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.SerialNumber.label}</th>
|
<th class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Department_Name__c.label}</th>
|
<!-- <th style="width:90px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Installation_Site__c.label}</th> -->
|
<th style="width:90px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.IF_Warranty__c.label}</th>
|
<!-- //JZHG-BSDUT4 ---20200825---update By rentongxiao---Start -->
|
<th style="width:90px" class="headerRow booleanColumn">主机/耗材</th>
|
<!-- //JZHG-BSDUT4 ---20200825---update By rentongxiao---End -->
|
|
<th class="headerRow booleanColumn">{!$ObjectType.Asset.fields.EGFlg_fromContract_asset__c.label}</th>
|
<th style="width:150px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Reson_Can_not_Warranty__c.label}</th>
|
<th style="width:90px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.InstallDate.label}</th>
|
<!-- <th style="width:90px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Asset_Owner__c.label}</th> -->
|
<th style="width:90px" class="headerRow booleanColumn">{!$ObjectType.Asset.fields.Accumulation_Repair_Amount__c.label}</th>
|
<th style="width:90px" class="headerRow booleanColumn">{!$ObjectType.Maintenance_Contract_Asset_Estimate__c.fields.Estimate_List_Price__c.label}</th>
|
</tr>
|
|
<apex:variable value="{!1}" var="cnt" />
|
<apex:repeat value="{!unCheckedAssetsView}" var="assetsView" id="outassetTable2">
|
<apex:repeat value="{!assetsView}" var="ar" id="assetTable2">
|
<tr class="dataRow {!IF(MOD(cnt, 2)==0, 'odd', 'even')} {!IF(cnt==1, 'first', '')}" onmouseover="if (window.hiOn){hiOn(this);} " onmouseout="if (window.hiOff){hiOff(this);} " onblur="if (window.hiOff){hiOff(this);}" onfocus="if (window.hiOn){hiOn(this);}">
|
<td class="dataCell" width="25px">
|
<apex:inputCheckbox value="{!ar.rec_checkBox_c}" id="assetRowCheckbox2" disabled="{!IF(ar.rec.Maintenance_Price_Month__c == 0 || ar.rec.IF_Warranty__c = '否', 'true', 'false')}"/>
|
</td>
|
<td class="dataCell" width="25%">
|
<apex:outputField value="{!ar.rec.name}" id="assetName"/>
|
</td>
|
<td class="dataCell" width="70px">
|
<apex:outputField value="{!ar.rec.Asset_situation__c}"/>
|
</td>
|
<td class="dataCell" width="70px">
|
<apex:outputField value="{!ar.rec.SerialNumber}"/>
|
</td>
|
<td class="dataCell">
|
<apex:outputField value="{!ar.rec.Department_Name__c}"/>
|
</td>
|
<!-- <td class="dataCell" width="70px">
|
<apex:outputField value="{!ar.rec.Installation_Site__c}"/>
|
</td> -->
|
<td class="dataCell" width="90px" style="text-align:center">
|
<apex:outputField value="{!ar.rec.IF_Warranty__c}"/>
|
</td>
|
<!-- //JZHG-BSDUT4 ---20200825---update By rentongxiao---Start -->
|
<td class="dataCell" width="90px" style="text-align:center">
|
<apex:outputField value="{!ar.rec.AssetMark__c}"/>
|
</td>
|
<!-- //JZHG-BSDUT4 ---20200825---update By rentongxiao---End -->
|
<td class="dataCell" style="text-align:center" >
|
<apex:outputField value="{!ar.rec.EquipmentGuaranteeFlg__c}"/>
|
</td>
|
<td class="dataCell" width="150px" style="text-align:center">
|
<apex:outputField value="{!ar.rec.Reson_Can_not_Warranty__c}"/>
|
</td>
|
<td class="dataCell" width="90px" style="text-align:center" >
|
<apex:outputField value="{!ar.rec.InstallDate}"/>
|
</td>
|
<!-- <td class="dataCell" width="90px">
|
<apex:outputField value="{!ar.rec.Asset_Owner__c}"/>
|
</td> -->
|
<td class="dataCell" width="90px" style="text-align:right" >
|
<apex:outputField value="{!ar.rec.Accumulation_Repair_Amount__c}"/>
|
</td>
|
<td class="dataCell" width="90px" style="text-align:right" >
|
<apex:outputField value="{!ar.rec.Maintenance_Price_Month__c}" />
|
</td>
|
</tr>
|
<apex:variable value="{!cnt + 1}" var="cnt" />
|
</apex:repeat>
|
</apex:repeat>
|
</table>
|
<apex:outputPanel >
|
<dir align="right">
|
<table>
|
<tr>
|
<td>{!(currPage-1)*selctRecordNum} - {!IF(currPage*selctRecordNum > totalRecords, totalRecords, currPage*selctRecordNum)}</td>
|
<td> 共{!totalRecords}个</td>
|
<td align="right" width="115px">显示
|
<apex:selectList value="{!selRecordOption}" id="selRecordOption" size="1" onchange="blockme();recordNumChangeJs();" disabled="{!IF(totalRecords<10,true,false)}"><apex:selectOptions value="{!recordNum}"/></apex:selectList>条记录
|
</td>
|
<td align="right" width="50px">第{!currPage}页</td>
|
<td align="right" width="45px">
|
<apex:commandLink action="{!firstPage}" value="首页" id="firstPg" onclick="blockme();" oncomplete="unblockUI();" reRender="allForm" style="{!IF(currPage==1,'display: none;','')}color: blue;"/>
|
<apex:outputText value="首页" style="{!IF(currPage!=1,'display: none;','')}color: gray;"></apex:outputText>
|
</td>
|
<td align="right" width="40px">
|
<apex:commandLink action="{!previousPage}" value="上一页" id="previous" onclick="blockme();" oncomplete="unblockUI();" reRender="allForm" style="{!IF(currPage==1,'display: none;','')}color: blue;"/>
|
<apex:outputText value="上一页" style="{!IF(currPage!=1,'display: none;','')}color: gray;"></apex:outputText>
|
</td>
|
<td width="3px"></td>
|
<td align="left" width="40px">
|
<!-- HWAG-B4R3SS START 20181026-->
|
<apex:commandLink action="{!nextPage}" value="下一页" id="next" onclick="blockme();" oncomplete="unblockUI();" reRender="allForm" style="{!IF(totalPage==currPage ||totalPage == 0,'display: none;','')}color: blue;"/>
|
<apex:outputText value="下一页" style="{!IF(totalPage!=currPage && totalPage != 0,'display: none;','')}color: gray;"></apex:outputText>
|
</td>
|
<td align="left" width="45px">
|
<apex:commandLink action="{!endPage}" value="尾页" id="endPg" onclick="blockme();" oncomplete="unblockUI();" reRender="allForm" style="{!IF(totalPage==currPage||totalPage == 0,'display: none;','')}color: blue;"/>
|
<apex:outputText value="尾页" style="{!IF(totalPage!=currPage
|
&& totalPage != 0,'display: none;','')}color: gray;"></apex:outputText>
|
</td>
|
<!-- HWAG-B4R3SS END 20181026-->
|
<td align="left">共{!totalPage}页</td>
|
</tr>
|
</table>
|
</dir>
|
</apex:outputPanel>
|
</apex:outputPanel>
|
</apex:pageblocksection>
|
<apex:pageblocksection title="合同信息" columns="1" id="contractInfo">
|
<apex:outputLabel />
|
<apex:outputPanel >
|
<table style="width:100%">
|
<tr>
|
<td width="22%"></td>
|
<!-- <td width="14%"></td> -->
|
<td width="22%"></td>
|
<td width="28%"></td>
|
<td width="14%"></td>
|
<td width="14%"></td>
|
</tr>
|
<tr>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.GuidePrice_Down__c.label}</th>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.GuidePrice_Up__c.label}</th>
|
<th style="text-align: center">申请报价金额</th>
|
<th style="text-align: center">合同设备修理总额</th>
|
<th style="text-align: center">合同总金额</th>
|
</tr>
|
<tr>
|
<td style="text-align: center">
|
<apex:outputField value="{!estimate.GuidePrice_Down__c}" id="GuidePriceDown" />
|
<apex:inputHidden value="{!estimate.GuidePrice_Down__c}" id="GuidePriceDownHidden" />
|
</td>
|
<td style="text-align: center">
|
<apex:outputField value="{!estimate.GuidePrice_Up__c}" id="GuidePriceUp" />
|
<apex:inputHidden value="{!estimate.GuidePrice_Up__c}" id="GuidePriceUpHidden" />
|
</td>
|
<td style="text-align: center">
|
<!--<apex:inputField value="{!estimate.Request_quotation_Amount__c}" id="quotation_Amount" />-->
|
<apex:inputField value="{!estimate.Request_quotation_Amount__c}" style="ime-mode: disabled; text-align: right; width:100px" id="quotation_Amount" onchange="checkDiscount(this.value);"/>
|
</td>
|
<td style="text-align: center">
|
<apex:outputField value="{!estimate.Asset_Repair_Sum_Price__c}" id="assetRepairSumPrice" />
|
<apex:inputHidden value="{!estimate.Asset_Repair_Sum_Price__c}" id="assetRepairSumPriceHidden" />
|
</td>
|
<td style="text-align: center">
|
<apex:outputField value="{!estimate.Maintenance_Price__c}" id="mainteReal" />
|
<apex:inputHidden value="{!estimate.Maintenance_Price__c}" id="mainteRealHidden"/>
|
<apex:inputHidden value="{!OldMaintenancePrice}" id="oldMainteReal"/>
|
</td>
|
</tr>
|
<tr>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.Service_discount_Rate__c.label}</th>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.New_Contract_Type_TxT__c.label}</th>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.Combined_rate__c.label}</th>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.Consumption_rate_Forecast__c.label}</th>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.Estimate_Price_range__c.label}</th>
|
</tr>
|
<tr>
|
<td style="text-align: center">
|
<apex:outputField value="{!estimate.Service_discount_Rate__c}" id="discount_Rate"/>
|
<apex:inputHidden value="{!estimate.Service_discount_Rate__c}" id="discount_RateHidden" />
|
</td>
|
<td style="text-align: center">
|
<apex:outputText value="{!estimate.New_Contract_Type_TxT__c}" id="Contract_TypeTXT" />
|
<apex:inputHidden value="{!typeresult}" id="Contract_TypeTXTHidden" />
|
</td>
|
<td style="text-align: center">
|
<apex:outputField value="{!estimate.Combined_rate__c}" id="Combinedrate" />
|
<apex:inputHidden value="{!estimate.Combined_rate__c}" id="CombinedrateHidden" />
|
</td>
|
<td style="text-align: center">
|
<apex:outputField value="{!estimate.Consumption_rate_Forecast__c}" />
|
</td>
|
<td style="text-align: center">
|
<apex:outputField value="{!estimate.Estimate_Price_range__c}" />
|
</td>
|
</tr>
|
<tr>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.ContractPriceType__c.label}</th>
|
<th style="text-align: center"></th>
|
<th style="text-align: center"></th>
|
<th style="text-align: center"></th>
|
<th style="text-align: center"></th>
|
</tr>
|
<tr>
|
<td style="text-align: center">
|
<apex:outputField value="{!estimate.ContractPriceType__c}"/>
|
</td>
|
<td style="text-align: center"></td>
|
<td style="text-align: center"></td>
|
<td style="text-align: center"></td>
|
<td style="text-align: center"></td>
|
</tr>
|
</table>
|
</apex:outputPanel>
|
</apex:pageblocksection>
|
|
<apex:pageblocksection title="申请背景" columns="1" id="Appbackground">
|
<apex:outputLabel />
|
<apex:outputPanel >
|
<table style="width:100%">
|
<tr>
|
<td width="10%"></td>
|
<td width="30%"></td>
|
<td width="10%"></td>
|
<td width="50%"></td>
|
</tr>
|
<tr>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.finalPriceDecideWay__c.label}</th>
|
<td><apex:inputField value="{!estimate.finalPriceDecideWay__c}" id="finalPriceDecideWay" style="width:50%;" /></td>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.Sales_incidental__c.label}</th>
|
<td><apex:inputField value="{!estimate.Sales_incidental__c}" id="Sales_incidental" style="width:50%;" /></td>
|
</tr>
|
<tr>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.mainTalksTime__c.label}</th>
|
<td ><apex:inputField value="{!estimate.mainTalksTime__c}" style="width:50%;" id="mainTalksTime"/></td>
|
<th>{!$ObjectType.Maintenance_Contract_Estimate__c.fields.talksStartDate__c.label}</th>
|
<td><apex:inputField value="{!estimate.talksStartDate__c}" id="talksStartDate" style="width:50%;" /></td>
|
</tr>
|
<tr>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.AgencyHos_Price__c.label}</th>
|
<td ><apex:inputField value="{!estimate.AgencyHos_Price__c}" style="width:50%;" id="AgencyHos_Price"/></td>
|
<th style="text-align: center"></th>
|
<td ></td>
|
</tr>
|
<tr>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.Discount_reason__c.label}</th>
|
<td colspan="3"><apex:inputField value="{!estimate.Discount_reason__c}" id="discountReason" style="width:95%;height:50px;" /></td>
|
</tr>
|
<tr>
|
<th style="text-align: center">{!$ObjectType.Maintenance_Contract_Estimate__c.fields.Improve_ConsumptionRate_Idea__c.label}</th>
|
<td colspan="3"><apex:inputField value="{!estimate.Improve_ConsumptionRate_Idea__c}" id="improveConsumptionRateIdea" style="width:95%;height:50px;" /></td>
|
</tr>
|
</table>
|
</apex:outputPanel>
|
<script type="text/javascript">
|
//var applyType = j$(escapeVfId('allPage:allForm:allBlock:Appbackground:applyType')).val();
|
//var obj = document.getElementById('allPage:allForm:allBlock:Appbackground:TypeOther');
|
//if (applyType == '其他') {
|
// obj.style.display = "block";
|
//} else {
|
// obj.style.display = "none";
|
//}
|
//resetapplyType();
|
</script>
|
</apex:pageblocksection>
|
|
<script type="text/javascript">
|
var isDisabled = {!PageDisabled};
|
if(!isDisabled){
|
refreshAsset({!productCount});
|
}
|
</script>
|
</apex:pageBlock>
|
|
|
|
<table width="100%" border="0">
|
<tr>
|
<!-- <td width="40%" style="text-align: right;"> -->
|
<td width="50%">
|
<table border="0" style="background-color:#ffd6c1;" width="100%">
|
<tr>
|
<th width="50px">打印报价</th>
|
<td width="90px"><apex:inputCheckbox id="check0" onchange="hideSimplify(0);" value="{!estimate.Print_ListPrice__c}" />完整版+折扣前</td>
|
<td width="90px"><apex:inputCheckbox id="check1" onchange="hideSimplify(1);" value="{!estimate.Print_Simplify__c}" />完整版+折扣后</td>
|
|
<td width="80px"><apex:inputCheckbox id="check2" onchange="hideSimplify(2);" value="{!estimate.Print_RepairPrice__c}"/>简化版+折扣前</td>
|
<td width="80px"><apex:inputCheckbox id="check3" onchange="hideSimplify(3);" value="{!estimate.Print_SumPrice__c}"/>简化版+折扣后</td>
|
</tr>
|
<tr>
|
<th width="70px">打印合同配置</th>
|
<td width="60px">
|
|
<!-- 2018/10/26HWAG-B5C88S 医院和经销商合同任何时候都不能选择 start -->
|
|
<apex:outputPanel rendered="false">
|
<apex:inputCheckbox value="{!estimate.Print_Contract__c}" />
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!Not(EnablePrintContract)}">
|
|
</apex:outputPanel>
|
医院合同
|
</td>
|
<!-- 2018/09/26 HWAG-B4SCR3 三方和代理商合同在未decide前也不能选择 start -->
|
<td width="60px">
|
<apex:outputPanel rendered="{!EnablePrintContract}">
|
<apex:inputCheckbox id="tripartite" value="{!estimate.Print_Tripartite__c}"/>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!Not(EnablePrintContract)}">
|
|
</apex:outputPanel>
|
三方协议</td>
|
<td width="85px">
|
<apex:outputPanel rendered="false">
|
<apex:inputCheckbox id="agent" value="{!estimate.Print_Agent__c}"/>
|
</apex:outputPanel>
|
<apex:outputPanel rendered="{!Not(EnablePrintContract)}">
|
|
</apex:outputPanel>
|
代理商合同</td>
|
<!-- 2018/09/26 HWAG-B4SCR3 三方和代理商合同在未decide前也不能选择 end -->
|
<!-- 2018/10/26 HWAG-B5C88S 医院和经销商合同任何时候都不能选择 end -->
|
|
<td colspan="3" style="text-align: right"><apex:commandButton action="{!print}" value="PDF印刷" rerender="allBlock,pdfPrint" onclick="if (!onclickCheckchangedAfterPrint('Pt{!SaveBtnDisabled}','false')) return false;" oncomplete="unblockUI();ComputeLTYRepair()"/></td>
|
</tr>
|
</table>
|
</td>
|
<td>
|
<table class="btntable" border="0">
|
<tr>
|
<td> </td>
|
<td> </td>
|
<td width="20px"> </td>
|
<td> </td>
|
<td> </td>
|
<td width="30px"> </td>
|
<!-- <td><apex:commandButton id="savebtn" action="{!save}" value="{!$Label.Save_Button}" disabled="{!SaveBtnDisabled}" rerender="allForm" onclick="if (!onclickCheckchangedAfterPrint('true','true')) return false;" oncomplete="unblockUI();"/></td> -->
|
<td><apex:commandButton id="savebtn" action="{!save}" value="{!$Label.Save_Button}" disabled="{!SaveBtnDisabled}" rerender="allForm" onclick="if (!EGFlgconfim()) return false;" oncomplete="unblockUI();"/></td>
|
|
<td width="200px"><apex:commandButton id="approvalbtn" action="{!approvalProcess}" value="提交待审批" disabled="{!ApprovalBtnDisabled}" rerender="allForm" onclick="if (!KindsAndMonths()) return false;if (!EGFlgconfim()) return false;approvalJs();" oncomplete="unblockUI();"/>
|
<!-- HWAG-B399Q8 2018/08/20 新增请提交待审批 提示字段 start-->
|
<apex:outputText style="color:red;font-size:20px;" value="请提交待审批" rendered="{!IS_Clone_After_Decide}"/>
|
<!-- HWAG-B399Q8 2018/08/20 新增请提交待审批 提示字段 end-->
|
</td>
|
</tr>
|
<tr>
|
<th>{!$ObjectType.Maintenance_Contract_Estimate__c.fields.Contract_Start_Date__c.label}</th>
|
<td><apex:inputField value="{!estimate.Contract_Start_Date__c}" id="contractstartdate" onchange="changeContractStartdate(this.value);"/></td>
|
<td> </td>
|
<th> {!$ObjectType.Maintenance_Contract_Estimate__c.fields.Contract_End_Date__c.label}</th>
|
<td><apex:outputField value="{!estimate.Contract_End_Date__c}" id="contractenddate"/></td>
|
<td> </td>
|
<td><apex:commandButton id="decidebtn" value="{!$Label.QuoteDecision_Button}" disabled="{!DecideBtnDisabled}" onclick="decideJs(); return false;"/></td>
|
<td style="text-align:right"><apex:commandButton id="undecidebtn" action="{!undecide}" value="取消{!$Label.QuoteDecision_Button}" disabled="{!UnDecideBtnDisabled}" rerender="allForm" onclick="blockme();" oncomplete="unblockUI();"/></td>
|
</tr>
|
</table>
|
</td>
|
</tr>
|
</table>
|
</apex:form>
|
<apex:outputPanel id="pdfPrint">
|
<script type="text/javascript">
|
//j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('false');
|
function saveBeforeCheckPriceChange() {
|
sforce.connection.sessionId = Session_ID;
|
var needClearId = false;
|
var rowCnt = j$(escapeVfId('allPage:allForm:allBlock:assetSection:productCnt')).val();
|
var assIds = "";
|
var proIds = "";
|
var priceMap = new Map();
|
var newProductMap = new Map();
|
var newProductCheck = false;
|
var nowDate = new Date();
|
var createdDate = null;
|
var createdDateShow = j$(escapeVfId('allPage:allForm:allBlock:contract:createDateShow')).text();
|
var contractDate = new Date(j$(escapeVfId('allPage:allForm:contractstartdate')).value());
|
if (createdDateShow.trim() != '') {
|
createdDate = new Date(createdDateShow);
|
newProductCheck = true;
|
} else {
|
createdDate = new Date();
|
}
|
var threeMonthAfter = new Date(createdDate.setMonth(createdDate.getMonth() + 3));
|
createdDate = new Date(createdDate.setMonth(createdDate.getMonth() - 3));
|
for (var i = 0; i < rowCnt; i++) {
|
var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
|
var isnew = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetNewHidden')).val();
|
var price = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':assetListPriceHidden')).val();
|
if (isManual == 'true') {
|
var a = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':ProductId'));
|
if (a.size() > 0 && a.value() != "000000000000000000" && a.value() != "") {
|
if (proIds == "") {
|
proIds = "'" + a.value() + "'";
|
} else {
|
proIds = proIds + ",'" + a.value() + "'";
|
}
|
if (isnew == "true") {
|
priceMap.set(a.value(), price/{!isNewPriceAdj});
|
} else {
|
priceMap.set(a.value(), price);
|
}
|
newProductMap.set(a.value(), isnew);
|
|
} else {
|
continue;
|
}
|
}
|
else {
|
var aId = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':AssetId')).value();
|
if (assIds == "") {
|
assIds = "'" + aId + "'";
|
} else {
|
assIds = assIds + ",'" + aId + "'";
|
}
|
if (isnew == "true") {
|
priceMap.set(aId, price/{!isNewPriceAdj});
|
} else {
|
priceMap.set(aId, price);
|
}
|
newProductMap.set(aId, isnew);
|
}
|
}
|
// 选择设备后价格变更check
|
if (assIds.length > 0) {
|
var sql = "SELECT Id, Maintenance_Price_Month__c, Posting_Date__c, InstallDate from Asset where Id In(" + assIds + ")";
|
var rt = sforce.connection.query(sql);
|
var asList = rt.getArray("records");
|
if (asList != null) {
|
for(var i=0;i<asList.length;i++) {
|
var asvar = asList[i];
|
var asId = asvar["Id"];
|
var mprice = asvar["Maintenance_Price_Month__c"];
|
var ptDt = asvar["Posting_Date__c"];
|
var postingDate = null;
|
if (ptDt != null && ptDt != '') {
|
postingDate = new Date(ptDt);
|
}
|
var inDt = asvar["InstallDate"];
|
var installDate = null;
|
if (inDt != null && inDt != '') {
|
installDate = new Date(inDt);
|
}
|
var priceShow = priceMap.get(asId);
|
var isNew = newProductMap.get(asId);
|
if ('{!DecideBtnDisabled}' == 'true') {
|
if (Number(mprice).toFixed(2) != Number(priceShow).toFixed(2)) {
|
needClearId = true;
|
// j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('true');
|
return needClearId;
|
}
|
}
|
}
|
}
|
}
|
if (proIds.length > 0) {
|
if ('{!DecideBtnDisabled}' == 'false') {
|
var oldDateStr = j$('#oldContractDate').value();
|
var oldDate = new Date();
|
if (oldDateStr != null && oldDateStr != '') {
|
oldDate = new Date(oldDateStr);
|
}
|
var crdt = new Date(j$(escapeVfId('allPage:allForm:allBlock:contract:createDateShow')).text());
|
var newContractDate = new Date(j$(escapeVfId('allPage:allForm:contractstartdate')).value());
|
var sixMonthAfter = new Date(crdt.setMonth(crdt.getMonth() + 6));
|
if ((newContractDate > sixMonthAfter && oldDate <= sixMonthAfter) || (newContractDate <= sixMonthAfter && oldDate > sixMonthAfter)) {
|
j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('true');
|
return true;
|
}
|
} else {
|
var sql = "SELECT Id, Maintenance_Price_Month__c from Product2 where Id In(" + proIds + ")";
|
var rt = sforce.connection.query(sql);
|
var pdList = rt.getArray("records");
|
if (pdList != null) {
|
for(var i=0;i<pdList.length;i++) {
|
var pdvar = pdList[i];
|
var pdId = pdvar["Id"];
|
var mprice = pdvar["Maintenance_Price_Month__c"];
|
var priceShow = priceMap.get(pdId);
|
if (Number(mprice).toFixed(2) != Number(priceShow).toFixed(2)) {
|
needClearId = true;
|
// j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('true');
|
return needClearId;
|
}
|
}
|
}
|
}
|
}
|
// var changedPrice = j$(escapeVfId('allPage:allForm:changedSubmitPrice')).value();
|
// if (changedPrice=='true') {
|
// needClearId = true;
|
// }
|
return needClearId;
|
}
|
|
// SelectAssetEstimateController#checkchangedAfterPrint と同じロジックにする必要があります。
|
// true 変更あり、false 変更なし
|
function checkchangedAfterPrint() {
|
sforce.connection.sessionId = Session_ID;
|
var needClearId = false;
|
//j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('false');
|
var changedPrice = j$(escapeVfId('allPage:allForm:changedSubmitPrice')).value();
|
// 新規の場合、targetEstimateIdがない、判断いらない
|
if ('{!targetEstimateId}' == '') return needClearId;
|
if ('{!estimate.Quote_Date__c}' != '' || '{!estimate.Process_Status__c}' != '草案中') {
|
// xud 20140529 ここは明細変更判断
|
// xudan 20150729 ソート項目にIdを追加
|
var sql = "SELECT Id, Asset__c, Asset__r.SerialNumber, Check_Result__c, Product_Manual__c,"
|
+ " Repair_Price__c, Comment__c, Maintenance_Contract_Estimate__r.Maintenance_Price__c"
|
+ " FROM Maintenance_Contract_Asset_Estimate__c"
|
+ " WHERE Maintenance_Contract_Estimate__c = '{!targetEstimateId}'"
|
+ " ORDER BY id,Asset__c,Product_Manual__c, Asset__r.SerialNumber, Asset__r.Name, Asset__r.Department_Name__c, Asset__r.InstallDate";
|
var result = sforce.connection.query(sql);
|
var mcaeList = result.getArray("records");
|
var inputingList = [];
|
var finalPrice = 0;
|
// 画面入力値を整理(いらないものを対象外にする)
|
var cntWithKara = {!productCount};
|
for (var i = 0; i < cntWithKara; i++) {
|
var isManual = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':IsManual')).text();
|
if (isManual == 'true') {
|
var a = j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':ProductId'));
|
if (a.size() > 0 && a.value() != "000000000000000000" && a.value() != "") {
|
inputingList.push(
|
{'id' : '',
|
'Product_Manual__c' : a.value(),
|
'Check_Result__c' : j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':checkResult')).value(),
|
'Repair_Price__c' : localParseFloat(j$.trim(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).value())),
|
'Comment__c': j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':comment')).value()
|
}
|
);
|
} else {
|
continue;
|
}
|
}
|
else {
|
inputingList.push(
|
{'id' : j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':AssetId')).value(),
|
'Check_Result__c' : j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':checkResult')).value(),
|
'Repair_Price__c' : localParseFloat(j$.trim(j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':repairPrice')).value())),
|
'Comment__c': j$(escapeVfId('allPage:allForm:allBlock:assetSection:assetTable:' + i + ':comment')).value()
|
}
|
);
|
}
|
}
|
//针对inputingList的重新排序
|
var arrayMap = [];
|
var ArrayOrderPMCnt = [];
|
for(var i=0;i<mcaeList.length;i++){
|
var mcaeVar = mcaeList[i];
|
var AssetIDOrPMC = mcaeVar["Asset__c"]!=null?mcaeVar["Asset__c"]:mcaeVar["Product_Manual__c"];
|
if(arrayMap[AssetIDOrPMC]!=null){
|
arrayMap[AssetIDOrPMC] = i;
|
ArrayOrderPMCnt[AssetIDOrPMC] = i;
|
}else{
|
// Product_Manual__c相同的话怎么办
|
if(ArrayOrderPMCnt[AssetIDOrPMC]==null){
|
ArrayOrderPMCnt[AssetIDOrPMC] = i;
|
}else{
|
var cacheArray = new Array();
|
cacheArray = ArrayOrderPMCnt[AssetIDOrPMC];
|
ArrayOrderPMCnt[AssetIDOrPMC] = cacheArray+','+i;
|
}
|
|
}
|
|
}
|
var inputingListCache = inputingList;
|
var cntLength = mcaeList.length>inputingListCache.length?mcaeList.length:inputingListCache.length;
|
if(mcaeList.length!=inputingListCache.length){
|
needClearId = true;
|
//j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('true');
|
return needClearId;
|
}
|
inputingList = new Array(cntLength);
|
var inputingListOut = new Array();
|
for(var i=0;i<inputingListCache.length;i++){
|
var InputIdOrPMc = inputingListCache[i].id!=""?inputingListCache[i].id:inputingListCache[i].Product_Manual__c;
|
var thisArray = ArrayOrderPMCnt[InputIdOrPMc];
|
if(thisArray.length!=null){
|
thisArray = thisArray.split(',');
|
var ORDERCnt = thisArray[0];
|
thisArray.shift();
|
thisArray = thisArray.join(',');
|
ArrayOrderPMCnt[InputIdOrPMc] = thisArray;
|
}else{
|
var ORDERCnt = thisArray;
|
}
|
if( ORDERCnt !=null){
|
inputingList[ORDERCnt] = inputingListCache[i];
|
}else{
|
inputingList[ORDERCnt] = inputingListCache[i];
|
inputingListOut.push(inputingListCache[i]);
|
}
|
}
|
if( inputingListOut.length>0){
|
for(var i = 0; i<inputingListOut.length;i++){
|
inputingList.push(inputingListOut[i]);
|
}
|
}
|
//20161122,测试发现Check_Result__c已停用,故而修改对应的Js判断部分
|
/*
|
&& (((mcae["Check_Result__c"] == null || mcae["Check_Result__c"] == "")
|
&& (inputing["Check_Result__c"] == null || inputing["Check_Result__c"] == "")
|
)
|
|| mcae["Check_Result__c"] == inputing["Check_Result__c"]
|
)
|
//==================================================================================
|
&& (((mcae["Check_Result__c"] == null || mcae["Check_Result__c"] == "")
|
&& (inputing["Check_Result__c"] == null || inputing["Check_Result__c"] == "")
|
)
|
|| mcae["Check_Result__c"] == inputing["Check_Result__c"]
|
)
|
*/
|
//原是代码保留
|
if (inputingList.length == mcaeList.length && needClearId == false ) {
|
for (var i = 0; i < mcaeList.length; i++) {
|
var mcae = mcaeList[i];
|
finalPrice = mcae["Maintenance_Contract_Estimate__r"]["Maintenance_Price__c"];
|
var inputing = inputingList[i];
|
if (mcae["Asset__c"] != null && mcae["Asset__c"] != "") {
|
if (inputing["id"] != "" && mcae["Asset__c"] == inputing["id"]
|
&& localParseFloat(mcae["Repair_Price__c"]) == inputing["Repair_Price__c"]
|
|
&& (((mcae["Comment__c"] == null || mcae["Comment__c"] == "")
|
&& (inputing["Comment__c"] == null || inputing["Comment__c"] == "")
|
)
|
|| mcae["Comment__c"] == inputing["Comment__c"]
|
)
|
) {
|
// 同じ
|
} else {
|
needClearId = true;
|
break;
|
}
|
} else {
|
if (inputing["id"] == "" && mcae["Product_Manual__c"] != null && mcae["Product_Manual__c"] != ""
|
&& mcae["Product_Manual__c"] == inputing["Product_Manual__c"]
|
|
&& localParseFloat(mcae["Repair_Price__c"]) == inputing["Repair_Price__c"]
|
&& (((mcae["Comment__c"] == null || mcae["Comment__c"] == "")
|
&& (inputing["Comment__c"] == null || inputing["Comment__c"] == "")
|
)
|
|| mcae["Comment__c"] == inputing["Comment__c"]
|
)
|
) {
|
// 同じ
|
} else {
|
needClearId = true;
|
break;
|
}
|
}
|
}
|
} else {
|
needClearId = true;
|
}
|
|
// xud 20140529 ここは総金額変更判断(割引を変更したらまずい)
|
var inputFinalPrice = j$(escapeVfId('allPage:allForm:allBlock:contractInfo:mainteRealHidden')).value();
|
if (toNum(inputFinalPrice) != toNum(finalPrice)) {
|
needClearId = true;
|
}
|
if (changedPrice=='true') {
|
needClearId = true;
|
}
|
}
|
if (needClearId) {
|
//j$(escapeVfId('allPage:allForm:changedAfterPrint')).val('true');
|
}
|
return needClearId;
|
}
|
|
if ('{!printAsset}' == 'true') {
|
//打印保有設備
|
// //必须选择打印报价(详细还是简化)
|
var con = 0;
|
for (j = 0; j < 4; j++) {
|
if (j$(escapeVfId('allPage:allForm:check' + j)).attr('checked')) {
|
con ++;
|
}
|
}
|
if(con != 1){
|
alert('请您勾选打印报价版本,只能勾选一个。');
|
}else{
|
window.open('/apex/MaintenanceContractEstimateVMPDF?id={!targetEstimateId}', 'MaintenanceContractEstimateVMPDF');
|
}
|
|
} else if ('{!printContract}' == 'true') {
|
// 打印医院合同配置
|
window.open('/apex/MceConfigPDF?id={!targetEstimateId}&flag=printContract', 'MceConfigPDF');
|
} else if ('{!printTripartite}' == 'true') {
|
//打印三方合同
|
window.open('/apex/MceConfigPDF?id={!targetEstimateId}&flag=printTripartite', 'MceConfigPDF');
|
} else if ('{!printAgent}' == 'true') {
|
//打印经销商合同
|
window.open('/apex/MceConfigPDF?id={!targetEstimateId}&flag=printAgent', 'MceConfigPDF');
|
}else {}
|
//当选择报价单(详细版)的时候隐藏报价单(简化版)
|
// 4个选项只可以选一个
|
function hideSimplify(cb){
|
for (j = 0; j < 4; j++) {
|
if (j$(escapeVfId('allPage:allForm:check' + j)).attr('checked')) {
|
j$(escapeVfId('allPage:allForm:check' + j)).attr('checked',false);
|
if (j == cb) {
|
j$(escapeVfId('allPage:allForm:check' + j)).attr('checked',true);
|
}
|
}
|
}
|
|
}
|
var isDisabled = {!PageDisabled};
|
if(!isDisabled){
|
refreshAsset({!productCount});
|
}
|
</script>
|
</apex:outputPanel>
|
</apex:page>
|