Giter Club home page Giter Club logo

grails-crm-core's People

Contributors

goeh avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

grails-crm-core's Issues

Make plugin compatible with Grails 2.4.X

Hi!

I know that all samples are written for Grails 2.2.4 and i suppose there were some reasons to do so.
But i want to run CRM with Grails 2.4.4 (latest stable version for current time) because i already have a project based on this version:)

I don't think this task is very hard, but i first would like to know what are the reasons, did you try to upgrade version, do you think it will be a good improvement for CRM?

Thank you!

CrmLookupEntity.equals(Object) issues

In CrmLookupEntity.equals(Object), if o == null, you get a NullPointerException.

If ! (o instanceof CrmLookupEntity), you get a GroovyCastException

Existing code:

boolean equals(o) {
    if (this.is(o)) return true
    //if (getClass() != o.class) return false
    // TODO How can we handle Hibernate proxies here without importing org.hibernate?
    // grails.plugins.crm.order.CrmOrderStatus_$$_javassist_7
    // grails.plugins.crm.order.CrmOrderStatus

    CrmLookupEntity that = (CrmLookupEntity) o

    if (this.id != that.id) return false
    if (this.orderIndex != that.orderIndex) return false
    if (this.name != that.name) return false
    if (this.param != that.param) return false

    return true
}

The following commented line should be replaced:

    //if (getClass() != o.class) return false

by something like:

    if (o == null || getClass() != o.class) return false

or:

    if (o == null || ! getClass().isAssignableFrom(o.class)) return false

A NullPointerException will also be thrown by CrmContactAddress.equals(Object), so you should check all of the equals(Object) methods in all of the crm classes.

If you want, the following article is useful for implementing robust equals(Object) methods:

http://www.artima.com/lejava/articles/equality.html

Grails 3.x version

Are there versions of the CRM plugins for use with Grails 3.x?

If not, will you ever provide Grails 3.x versions?

Thanks.

recommended approach for import and integration

What's the recommended approach for importing data and integration?

  • I know that's a loaded question, simple to ask yet impossibly long to answer.

Two different questions here:
1> simple initial provisioning
vs
2> EAI - app integration maybe using EIP but then that gets ugly and uber complicated. or simple point-to-point integration.

What are you thoughts or experiences on approaches?
Is there something already built into the service layer for this?

tenant UI for admin managememnt

Is there a tenant UI for admin management?
Whats the general practice on this?
How do we assign users to a tenancy?
Is this all groovy scripts or is there a admin UI is there a Tenant Service layer or just the TenantUtils?

crmSecurityService.runAs(admin.username) {
            def account = crmAccountService.createAccount([status: "active"])
            def tenant = crmSecurityService.createTenant(account, "GR8 Contacts", [locale: Locale.ENGLISH])
            crmSecurityService.runAs(admin.username, tenant.id) {
                crmSecurityService.addPermissionToUser("permission.all")

Does the user that creates a tenant does it "own" it by default?
What happens if tenancy is created and nobody is assigned "permission.all" ?
Ton more questions, but if there is a UI, then I'll investigate that. Otherwise, then I'll have to write one?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.