From ddf52e1dd6e4041756854ee3ea914d568e98922e Mon Sep 17 00:00:00 2001 From: 张宇恒 <bxyun0@163.com> Date: 星期四, 28 四月 2022 09:35:35 +0800 Subject: [PATCH] 【委托】 【新需求】询价页面增加新对象 --- force-app/main/default/pages/AdvanceOpportunity.page | 33 +++++++++++ force-app/main/default/classes/AdvanceOpportunityController.cls-meta.xml | 5 + force-app/main/default/pages/AdvanceOpportunity.page-meta.xml | 5 + force-app/main/default/classes/AdvanceOpportunityTest.cls-meta.xml | 5 + force-app/main/default/classes/AdvanceOpportunityTest.cls | 62 ++++++++++++++++++++ force-app/main/default/classes/AdvanceOpportunityController.cls | 22 +++++++ 6 files changed, 132 insertions(+), 0 deletions(-) diff --git a/force-app/main/default/classes/AdvanceOpportunityController.cls b/force-app/main/default/classes/AdvanceOpportunityController.cls new file mode 100644 index 0000000..2f7b003 --- /dev/null +++ b/force-app/main/default/classes/AdvanceOpportunityController.cls @@ -0,0 +1,22 @@ +public with sharing class AdvanceOpportunityController { + public AdvanceOpportunityController(ApexPages.StandardController stdController) { + AdOpportunity = new Advance_Opportunity__c(); + } + public Advance_Opportunity__c AdOpportunity{get; set;} + public void init(){ + String aoId = ApexPages.currentPage().getParameters().get('id'); + List<Advance_Opportunity__c> aoList = [SELECT Id,MarketAdvance__c,AddOpportunity__c,BigContract__c,GradePro__c,AddPrice__c,Opportunity__c FROM Advance_Opportunity__c WHERE Opportunity__c = :aoId]; + if (aoList.size() == 0) { + + } else{ + AdOpportunity = aoList[0]; + } + } + public void save(){ + if (String.isBlank(AdOpportunity.Opportunity__c)) { + AdOpportunity.Opportunity__c = ApexPages.currentPage().getParameters().get('id'); + } + // AdOpportunity.Name = 'ceshi'; + upsert AdOpportunity; + } +} \ No newline at end of file diff --git a/force-app/main/default/classes/AdvanceOpportunityController.cls-meta.xml b/force-app/main/default/classes/AdvanceOpportunityController.cls-meta.xml new file mode 100644 index 0000000..c413058 --- /dev/null +++ b/force-app/main/default/classes/AdvanceOpportunityController.cls-meta.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata"> + <apiVersion>41.0</apiVersion> + <status>Active</status> +</ApexClass> \ No newline at end of file diff --git a/force-app/main/default/classes/AdvanceOpportunityTest.cls b/force-app/main/default/classes/AdvanceOpportunityTest.cls new file mode 100644 index 0000000..e247a6d --- /dev/null +++ b/force-app/main/default/classes/AdvanceOpportunityTest.cls @@ -0,0 +1,62 @@ +@isTest +private class AdvanceOpportunityTest { + static final String RC_BYOUIN = '鐥呴櫌'; + static final String RC_HANBAOITEN = '璨╁2搴�'; + static final String RC_KEIYAKU = '濂戠磩'; + static testMethod void testMethod1() { + + } + @isTest + static void test_1(){ + RecordType recByoin = [select id from RecordType where IsActive = true and SobjectType= 'Account' and Name=:RC_BYOUIN limit 1]; + Account hospital = new Account(Name = '銉嗐偣銉堢梾闄�'); + hospital.RecordTypeId = recByoin.id; + hospital.Site = '銉嗐偣銉堢梾闄㈤儴闁�'; + hospital.Alias_Name2__c = '銉嗐偣銉堢梾闄㈠垾鍚�'; + insert hospital; + + RecordType recHanbaiten = [select id from RecordType where IsActive = true and SobjectType= 'Account' and Name=:RC_HANBAOITEN limit 1]; + Account sellerA = new Account(Name = '璨╁2搴�'); + sellerA.RecordTypeId = recHanbaiten.id; + sellerA.Hospital__c = hospital.id; + sellerA.Business_Paper_Expiration_Date__c = Date.today().addDays(20); + insert sellerA; + + RecordType recKeiyaku = [select id from RecordType where IsActive = true and SobjectType= 'Account' and Name=:RC_KEIYAKU limit 1]; + Account contractA = new Account(Name = '*'); + contractA.RecordTypeId = recKeiyaku.id; + contractA.Agent_Ref__c = sellerA.id; + contractA.ParentId = sellerA.id; + insert contractA; + System.Test.startTest(); + Opportunity opp = new Opportunity( Name='aiueo', StageName='contact', CloseDate=Date.today()); + opp.Trade__c = '鍐呰部'; + //opp.CurrencyIsoCode = CurrencyIso; + opp.Sales_Root__c = '璨╁2搴�'; + opp.StageName = '寮曞悎'; + opp.Fixed_Check__c = false; + opp.owner_not_automatically_update__c = true; + //opp.Pricebook2Id = pricebook.id; + opp.Purchase_Type__c = '涓�鑸紩鍚�'; + opp.Promise_Class__c = '鍐呰部'; + opp.Fund_Basis__c = '鏀垮簻璩囬噾'; + opp.AccountId = contractA.id; + opp.Hospital__c = contractA.id; + opp.Agency1__c = sellerA.id; + opp.Wholesale_Price__c = 9000; + opp.Opportunity_stage__c = '杩樻病鐢宠棰勭畻'; + opp.Close_Forecasted_Date__c = Date.today().addDays(50); + opp.Special_Opp_lanhai__c = false; + insert opp; + + AdvanceOpportunityController aoc = new AdvanceOpportunityController(new ApexPages.StandardController(opp)); + Advance_Opportunity__c ado = new Advance_Opportunity__c(); + // ado.Name = 'test'; + ado.Opportunity__c = opp.Id; + insert ado; + aoc.init(); + ado.BigContract__c = true; + upsert ado; + aoc.save(); + } +} \ No newline at end of file diff --git a/force-app/main/default/classes/AdvanceOpportunityTest.cls-meta.xml b/force-app/main/default/classes/AdvanceOpportunityTest.cls-meta.xml new file mode 100644 index 0000000..c413058 --- /dev/null +++ b/force-app/main/default/classes/AdvanceOpportunityTest.cls-meta.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ApexClass xmlns="http://soap.sforce.com/2006/04/metadata"> + <apiVersion>41.0</apiVersion> + <status>Active</status> +</ApexClass> \ No newline at end of file diff --git a/force-app/main/default/pages/AdvanceOpportunity.page b/force-app/main/default/pages/AdvanceOpportunity.page new file mode 100644 index 0000000..3f44175 --- /dev/null +++ b/force-app/main/default/pages/AdvanceOpportunity.page @@ -0,0 +1,33 @@ +<apex:page standardController="Opportunity" extensions="AdvanceOpportunityController" showChat="false" showHeader="false" sidebar="false" action="{!init}" id="Page"> +<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"/> +<head> +<title>璇环鎺ㄨ繘</title> + + <script type="text/javascript"> + function save(){ + blockme(); + alert("淇濆瓨鎴愬姛"); + allSave(); + // save(); + } + </script> +</head> +<apex:form> + +<apex:inputField value="{!AdOpportunity.MarketAdvance__c}">甯傚満鍏卞悓鎺ㄨ繘</apex:inputField> +<br /> +<apex:inputField value="{!AdOpportunity.AddOpportunity__c}">鏂板璇环</apex:inputField> +<br /> +<apex:inputField value="{!AdOpportunity.BigContract__c}">澶у悎鍚�</apex:inputField> +<br /> +<apex:inputField value="{!AdOpportunity.GradePro__c}">绛夌骇鎻愬崌</apex:inputField> +<br /> +<apex:inputField value="{!AdOpportunity.AddPrice__c}">澧炲姞閲戦</apex:inputField> +<br /> +<apex:commandButton action="{!save}" onclick="save();return false;" value="淇濆瓨"></apex:commandButton> +</apex:form> +</apex:page> \ No newline at end of file diff --git a/force-app/main/default/pages/AdvanceOpportunity.page-meta.xml b/force-app/main/default/pages/AdvanceOpportunity.page-meta.xml new file mode 100644 index 0000000..c9b24a8 --- /dev/null +++ b/force-app/main/default/pages/AdvanceOpportunity.page-meta.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<ApexPage xmlns="http://soap.sforce.com/2006/04/metadata"> + <apiVersion>41.0</apiVersion> + <label>AdvanceOpportunity</label> +</ApexPage> \ No newline at end of file -- Gitblit v1.9.1