001// -------------------------------------------------------------------------------- 002// Copyright 2002-2024 Echo Three, LLC 003// 004// Licensed under the Apache License, Version 2.0 (the "License"); 005// you may not use this file except in compliance with the License. 006// You may obtain a copy of the License at 007// 008// http://www.apache.org/licenses/LICENSE-2.0 009// 010// Unless required by applicable law or agreed to in writing, software 011// distributed under the License is distributed on an "AS IS" BASIS, 012// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 013// See the License for the specific language governing permissions and 014// limitations under the License. 015// -------------------------------------------------------------------------------- 016 017package com.echothree.model.control.customer.common.transfer; 018 019import com.echothree.model.control.accounting.common.transfer.CurrencyTransfer; 020import com.echothree.model.control.accounting.common.transfer.GlAccountTransfer; 021import com.echothree.model.control.cancellationpolicy.common.transfer.CancellationPolicyTransfer; 022import com.echothree.model.control.offer.common.transfer.OfferUseTransfer; 023import com.echothree.model.control.party.common.transfer.DateTimeFormatTransfer; 024import com.echothree.model.control.party.common.transfer.LanguageTransfer; 025import com.echothree.model.control.party.common.transfer.PartyGroupTransfer; 026import com.echothree.model.control.party.common.transfer.PartyTransfer; 027import com.echothree.model.control.party.common.transfer.PartyTypeTransfer; 028import com.echothree.model.control.party.common.transfer.PersonTransfer; 029import com.echothree.model.control.party.common.transfer.ProfileTransfer; 030import com.echothree.model.control.party.common.transfer.TimeZoneTransfer; 031import com.echothree.model.control.returnpolicy.common.transfer.ReturnPolicyTransfer; 032import com.echothree.model.control.workflow.common.transfer.WorkflowEntityStatusTransfer; 033 034public class CustomerTransfer 035 extends PartyTransfer { 036 037 private String customerName; 038 private CustomerTypeTransfer customerType; 039 private OfferUseTransfer initialOfferUse; 040 private GlAccountTransfer arGlAccount; 041 private Boolean holdUntilComplete; 042 private Boolean allowBackorders; 043 private Boolean allowSubstitutions; 044 private Boolean allowCombiningShipments; 045 private Boolean requireReference; 046 private Boolean allowReferenceDuplicates; 047 private String referenceValidationPattern; 048 private WorkflowEntityStatusTransfer customerStatus; 049 private WorkflowEntityStatusTransfer customerCreditStatus; 050 051 /** Creates a new instance of CustomerTransfer */ 052 public CustomerTransfer(String partyName, PartyTypeTransfer partyType, LanguageTransfer preferredLanguage, CurrencyTransfer preferredCurrency, 053 TimeZoneTransfer preferredTimeZone, DateTimeFormatTransfer preferredDateTimeFormat, PersonTransfer person, PartyGroupTransfer partyGroup, 054 ProfileTransfer profileTransfer, String customerName, CustomerTypeTransfer customerType, OfferUseTransfer initialOfferUse, 055 CancellationPolicyTransfer cancellationPolicy, ReturnPolicyTransfer returnPolicy, GlAccountTransfer arGlAccount, Boolean holdUntilComplete, 056 Boolean allowBackorders, Boolean allowSubstitutions, Boolean allowCombiningShipments, Boolean requireReference, Boolean allowReferenceDuplicates, 057 String referenceValidationPattern, WorkflowEntityStatusTransfer customerStatus, WorkflowEntityStatusTransfer customerCreditStatus) { 058 super(partyName, partyType, preferredLanguage, preferredCurrency, preferredTimeZone, preferredDateTimeFormat, person, partyGroup, profileTransfer); 059 060 this.customerName = customerName; 061 this.customerType = customerType; 062 this.initialOfferUse = initialOfferUse; 063 setCancellationPolicy(cancellationPolicy); 064 setReturnPolicy(returnPolicy); 065 this.arGlAccount = arGlAccount; 066 this.holdUntilComplete = holdUntilComplete; 067 this.allowBackorders = allowBackorders; 068 this.allowSubstitutions = allowSubstitutions; 069 this.allowCombiningShipments = allowCombiningShipments; 070 this.requireReference = requireReference; 071 this.allowReferenceDuplicates = allowReferenceDuplicates; 072 this.referenceValidationPattern = referenceValidationPattern; 073 this.customerStatus = customerStatus; 074 this.customerCreditStatus = customerCreditStatus; 075 } 076 077 /** 078 * Returns the customerName. 079 * @return the customerName 080 */ 081 public String getCustomerName() { 082 return customerName; 083 } 084 085 /** 086 * Sets the customerName. 087 * @param customerName the customerName to set 088 */ 089 public void setCustomerName(String customerName) { 090 this.customerName = customerName; 091 } 092 093 /** 094 * Returns the customerType. 095 * @return the customerType 096 */ 097 public CustomerTypeTransfer getCustomerType() { 098 return customerType; 099 } 100 101 /** 102 * Sets the customerType. 103 * @param customerType the customerType to set 104 */ 105 public void setCustomerType(CustomerTypeTransfer customerType) { 106 this.customerType = customerType; 107 } 108 109 /** 110 * Returns the initialOfferUse. 111 * @return the initialOfferUse 112 */ 113 public OfferUseTransfer getInitialOfferUse() { 114 return initialOfferUse; 115 } 116 117 /** 118 * Sets the initialOfferUse. 119 * @param initialOfferUse the initialOfferUse to set 120 */ 121 public void setInitialOfferUse(OfferUseTransfer initialOfferUse) { 122 this.initialOfferUse = initialOfferUse; 123 } 124 125 /** 126 * Returns the arGlAccount. 127 * @return the arGlAccount 128 */ 129 public GlAccountTransfer getArGlAccount() { 130 return arGlAccount; 131 } 132 133 /** 134 * Sets the arGlAccount. 135 * @param arGlAccount the arGlAccount to set 136 */ 137 public void setArGlAccount(GlAccountTransfer arGlAccount) { 138 this.arGlAccount = arGlAccount; 139 } 140 141 /** 142 * Returns the holdUntilComplete. 143 * @return the holdUntilComplete 144 */ 145 public Boolean getHoldUntilComplete() { 146 return holdUntilComplete; 147 } 148 149 /** 150 * Sets the holdUntilComplete. 151 * @param holdUntilComplete the holdUntilComplete to set 152 */ 153 public void setHoldUntilComplete(Boolean holdUntilComplete) { 154 this.holdUntilComplete = holdUntilComplete; 155 } 156 157 /** 158 * Returns the allowBackorders. 159 * @return the allowBackorders 160 */ 161 public Boolean getAllowBackorders() { 162 return allowBackorders; 163 } 164 165 /** 166 * Sets the allowBackorders. 167 * @param allowBackorders the allowBackorders to set 168 */ 169 public void setAllowBackorders(Boolean allowBackorders) { 170 this.allowBackorders = allowBackorders; 171 } 172 173 /** 174 * Returns the allowSubstitutions. 175 * @return the allowSubstitutions 176 */ 177 public Boolean getAllowSubstitutions() { 178 return allowSubstitutions; 179 } 180 181 /** 182 * Sets the allowSubstitutions. 183 * @param allowSubstitutions the allowSubstitutions to set 184 */ 185 public void setAllowSubstitutions(Boolean allowSubstitutions) { 186 this.allowSubstitutions = allowSubstitutions; 187 } 188 189 /** 190 * Returns the allowCombiningShipments. 191 * @return the allowCombiningShipments 192 */ 193 public Boolean getAllowCombiningShipments() { 194 return allowCombiningShipments; 195 } 196 197 /** 198 * Sets the allowCombiningShipments. 199 * @param allowCombiningShipments the allowCombiningShipments to set 200 */ 201 public void setAllowCombiningShipments(Boolean allowCombiningShipments) { 202 this.allowCombiningShipments = allowCombiningShipments; 203 } 204 205 /** 206 * Returns the requireReference. 207 * @return the requireReference 208 */ 209 public Boolean getRequireReference() { 210 return requireReference; 211 } 212 213 /** 214 * Sets the requireReference. 215 * @param requireReference the requireReference to set 216 */ 217 public void setRequireReference(Boolean requireReference) { 218 this.requireReference = requireReference; 219 } 220 221 /** 222 * Returns the allowReferenceDuplicates. 223 * @return the allowReferenceDuplicates 224 */ 225 public Boolean getAllowReferenceDuplicates() { 226 return allowReferenceDuplicates; 227 } 228 229 /** 230 * Sets the allowReferenceDuplicates. 231 * @param allowReferenceDuplicates the allowReferenceDuplicates to set 232 */ 233 public void setAllowReferenceDuplicates(Boolean allowReferenceDuplicates) { 234 this.allowReferenceDuplicates = allowReferenceDuplicates; 235 } 236 237 /** 238 * Returns the referenceValidationPattern. 239 * @return the referenceValidationPattern 240 */ 241 public String getReferenceValidationPattern() { 242 return referenceValidationPattern; 243 } 244 245 /** 246 * Sets the referenceValidationPattern. 247 * @param referenceValidationPattern the referenceValidationPattern to set 248 */ 249 public void setReferenceValidationPattern(String referenceValidationPattern) { 250 this.referenceValidationPattern = referenceValidationPattern; 251 } 252 253 /** 254 * Returns the customerStatus. 255 * @return the customerStatus 256 */ 257 public WorkflowEntityStatusTransfer getCustomerStatus() { 258 return customerStatus; 259 } 260 261 /** 262 * Sets the customerStatus. 263 * @param customerStatus the customerStatus to set 264 */ 265 public void setCustomerStatus(WorkflowEntityStatusTransfer customerStatus) { 266 this.customerStatus = customerStatus; 267 } 268 269 /** 270 * Returns the customerCreditStatus. 271 * @return the customerCreditStatus 272 */ 273 public WorkflowEntityStatusTransfer getCustomerCreditStatus() { 274 return customerCreditStatus; 275 } 276 277 /** 278 * Sets the customerCreditStatus. 279 * @param customerCreditStatus the customerCreditStatus to set 280 */ 281 public void setCustomerCreditStatus(WorkflowEntityStatusTransfer customerCreditStatus) { 282 this.customerCreditStatus = customerCreditStatus; 283 } 284 285}