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