This is an automated email from the git hooks/post-receive script. New commit to branch feature/882 in repository chorem. See http://git.chorem.org/chorem.git commit 0fa7ab303d3b51ecab2e15bf24905aafeb4107a0 Author: kootox <jean.couteau@gmail.com> Date: Wed Feb 4 15:52:29 2015 +0100 ref #882 : full ContactDetails CRUD on companies --- .../webmotion/actions/crm/CompaniesAction.java | 46 +++++++++++++++++++--- chorem-webmotion/src/main/resources/mapping | 11 ++++-- ...ctDetailsCard.jsp => addContactDetailsCard.jsp} | 13 +++--- .../jsp/crm/cards/contactDetailsListCard.jsp | 5 ++- .../jsp/crm/cards/editContactDetailsCard.jsp | 6 ++- .../src/main/webapp/WEB-INF/jsp/crm/companies.jsp | 4 +- .../src/main/webapp/WEB-INF/jsp/crm/company.jsp | 4 +- 7 files changed, 67 insertions(+), 22 deletions(-) diff --git a/chorem-webmotion/src/main/java/org/chorem/webmotion/actions/crm/CompaniesAction.java b/chorem-webmotion/src/main/java/org/chorem/webmotion/actions/crm/CompaniesAction.java index 39ab445..f584114 100644 --- a/chorem-webmotion/src/main/java/org/chorem/webmotion/actions/crm/CompaniesAction.java +++ b/chorem-webmotion/src/main/java/org/chorem/webmotion/actions/crm/CompaniesAction.java @@ -130,19 +130,55 @@ public class CompaniesAction extends WebMotionController { } - public Render editContactDetails(ChoremClient client, String id){ - ContactDetails cd = client.restore(ContactDetails.class, id); + /////////////////////////////////////////////////////////////////////////////////////////////////////// + // // + // CONTACT DETAILS // + // // + /////////////////////////////////////////////////////////////////////////////////////////////////////// + + public Render editContactDetails(ChoremClient client, String cd_id, String id){ + ContactDetails cd = client.restore(ContactDetails.class, cd_id); return renderView("crm/cards/editContactDetailsCard.jsp", "contactDetail", cd); } - public Render updateContactDetails(ChoremClient client, String id, String type, String value, String name){ - ContactDetails cd = client.restore(ContactDetails.class, id); + public Render updateContactDetails(ChoremClient client, String id, String cd_id, String type, String value, String name){ + ContactDetails cd = client.restore(ContactDetails.class, cd_id); cd.setName(name); cd.setType(type); cd.setValue(value); client.store(cd); - return viewCompany(client, cd.getTarget()); + List<ContactDetails> contactDetails = listContactDetails(client, id); + Company company = client.restore(Company.class, id); + return renderView("crm/cards/contactDetailsListCard.jsp", + "company", company, + "contactDetails", contactDetails); + } + + public Render deleteContactDetails(ChoremClient client, String id, String cd_id){ + client.delete(cd_id); + List<ContactDetails> contactDetails = listContactDetails(client, id); + Company company = client.restore(Company.class, id); + return renderView("crm/cards/contactDetailsListCard.jsp", + "company", company, + "contactDetails", contactDetails); + } + + public Render addContactDetailsForm(String id){ + return renderView("crm/cards/addContactDetailsCard.jsp", + "companyId", id); + } + + public Render addContactDetails(ChoremClient client, String id, String type, String value, String name){ + ContactDetails cd = new ContactDetailsImpl(); + cd.setName(name); + cd.setType(type); + cd.setValue(value); + cd.setTarget(id); + client.store(cd); + List<ContactDetails> contactDetails = listContactDetails(client, id); + return renderView("crm/cards/contactDetailsListCard.jsp", + "contactDetails", contactDetails); } protected List<Note> listNotes(ChoremClient client, String companyId) { diff --git a/chorem-webmotion/src/main/resources/mapping b/chorem-webmotion/src/main/resources/mapping index 0880157..bd4c17e 100644 --- a/chorem-webmotion/src/main/resources/mapping +++ b/chorem-webmotion/src/main/resources/mapping @@ -95,8 +95,11 @@ GET /* DecoratorFilter.decorate * /project/json/getGanttInfo/{id} action:project.GanttAction.getGanttInfo * /project/employee action:project.DashboardProjectAction.requestEmployee * /crm/account/{id} action:crm.AccountAction.view + * /crm/quotation/edit/{id} action:crm.QuotationAction.edit * /crm/export action:crm.ExportAction.exportContactBase + +#### CRM Companies part#### * /crm/companies action:crm.CompaniesAction.listCompanies GET /crm/companies/add action:crm.CompaniesAction.addCompanyForm POST /crm/companies/add action:crm.CompaniesAction.addCompany @@ -104,9 +107,11 @@ GET /crm/companies/{id} action:crm.CompaniesAction.viewCompany POST /crm/companies/{id} action:crm.CompaniesAction.updateCompany GET /crm/companies/{id}/edit action:crm.CompaniesAction.editCompany POST /crm/companies/{id}/delete action:crm.CompaniesAction.deleteCompany -POST /crm/contactDetails/{id} action:crm.CompaniesAction.updateContactDetails -GET /crm/contactDetails/{id}/edit action:crm.CompaniesAction.editContactDetails -POST /crm/contactDetails/{id}/delete action:crm.CompaniesAction.deleteContactDetails +GET /crm/companies/{id}/contactDetails/add action:crm.CompaniesAction.addContactDetailsForm +POST /crm/companies/{id}/contactDetails/add action:crm.CompaniesAction.addContactDetails +POST /crm/companies/{id}/contactDetails/{cd_id} action:crm.CompaniesAction.updateContactDetails +GET /crm/companies/{id}/contactDetails/{cd_id}/edit action:crm.CompaniesAction.editContactDetails +POST /crm/companies/{id}/contactDetails/{cd_id}/delete action:crm.CompaniesAction.deleteContactDetails GET /crm/employees/{id} action:crm.CompaniesAction.viewEmployee diff --git a/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/editContactDetailsCard.jsp b/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/addContactDetailsCard.jsp similarity index 76% copy from chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/editContactDetailsCard.jsp copy to chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/addContactDetailsCard.jsp index bb40671..e8a9087 100644 --- a/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/editContactDetailsCard.jsp +++ b/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/addContactDetailsCard.jsp @@ -2,11 +2,13 @@ <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> -<form id="editForm" class="form-horizontal pjax" method="POST" action="<c:url value="/crm/contactDetails/${contactDetail.wikittyId}"/>" data-pjax="#main"> +<form id="editForm" class="form-horizontal" method="POST" + action="<c:url value="/crm/companies/${companyId}/contactDetails/add"/>" + data-pjax="#contactDetailsListCard"> <div class="modal-header"> <div class="btn-group pull-left"> - <buttonclass="btn btn-danger" data-dismiss="modal"> + <button class="btn btn-danger" data-dismiss="modal"> Cancel </button> </div> @@ -15,7 +17,7 @@ <input type="submit" id="editForm-success" class="btn btn-success" data-dismiss="modal" value="Save"> </div> <h3 class="modal-title"> - Éditer une coordonnées + Ajouter une coordonnée </h3> </div> @@ -46,11 +48,6 @@ </form> <div class="modal-footer"> - <button type="button" class="btn btn-danger btn-block" - onclick="bootcards.confirmDelete('company'); return false;"> - <i class="fa fa-trash-o"></i> - Supprimer la coordonnée - </button> </div> <script type="text/javascript"> diff --git a/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/contactDetailsListCard.jsp b/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/contactDetailsListCard.jsp index e70bb0e..7b88908 100644 --- a/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/contactDetailsListCard.jsp +++ b/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/contactDetailsListCard.jsp @@ -1,11 +1,12 @@ <%@page contentType="text/html" pageEncoding="UTF-8"%> +<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <div class="panel panel-default"> <div class="panel-heading clearfix"> <h3 class="panel-title pull-left">Coordonnées</h3> <div class="btn-group pull-right"> - <a class="btn btn-primary" href="#" + <a class="btn btn-primary" href="<c:url value="/crm/companies/${company.wikittyId}/contactDetails/add"/>" data-toggle="modal" data-target="#editModal"> <i class="fa fa-plus"></i> @@ -25,7 +26,7 @@ <h4 class="list-group-item-heading">${contactDetail.value}</h4> </div> <div class="col-sm-3"> - <a class="btn btn-primary pull-right" href="<c:url value="/crm/contactDetails/${contactDetail.wikittyId}/edit"/>" data-toggle="modal" data-target="#editModal"> + <a class="btn btn-primary pull-right" href="<c:url value="/crm/companies/${company.wikittyId}/contactDetails/${contactDetail.wikittyId}/edit"/>" data-toggle="modal" data-target="#editModal"> <i class="fa fa-pencil"></i><span>Edit</span> </a> </div> diff --git a/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/editContactDetailsCard.jsp b/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/editContactDetailsCard.jsp index bb40671..77b222a 100644 --- a/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/editContactDetailsCard.jsp +++ b/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/cards/editContactDetailsCard.jsp @@ -2,11 +2,13 @@ <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> -<form id="editForm" class="form-horizontal pjax" method="POST" action="<c:url value="/crm/contactDetails/${contactDetail.wikittyId}"/>" data-pjax="#main"> +<form id="editForm" class="form-horizontal" method="POST" + action="<c:url value="/crm/companies/${contactDetail.target}/contactDetails/${contactDetail.wikittyId}"/>" + data-pjax="#contactDetailsListCard"> <div class="modal-header"> <div class="btn-group pull-left"> - <buttonclass="btn btn-danger" data-dismiss="modal"> + <button class="btn btn-danger" data-dismiss="modal"> Cancel </button> </div> diff --git a/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/companies.jsp b/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/companies.jsp index 783f7eb..2300c86 100644 --- a/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/companies.jsp +++ b/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/companies.jsp @@ -78,7 +78,9 @@ <%@include file="cards/companyInfoCard.jsp" %> <!-- contact details card --> - <%@include file="cards/contactDetailsListCard.jsp" %> + <div id="contactDetailsListCard"> + <%@include file="cards/contactDetailsListCard.jsp" %> + </div> <!-- notes card --> <%@include file="cards/notesListCard.jsp" %> diff --git a/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/company.jsp b/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/company.jsp index 2f734d3..3a39518 100644 --- a/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/company.jsp +++ b/chorem-webmotion/src/main/webapp/WEB-INF/jsp/crm/company.jsp @@ -6,7 +6,9 @@ <%@include file="cards/companyInfoCard.jsp" %> <!-- contact details card --> -<%@include file="cards/contactDetailsListCard.jsp" %> +<div id="contactDetailsListCard"> + <%@include file="cards/contactDetailsListCard.jsp" %> +</div> <!-- notes card --> <%@include file="cards/notesListCard.jsp" %> -- To stop receiving notification emails like this one, please contact chorem.org SCM administrator <admin+scm@chorem.org>.