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