18 package org.turro.financials.document.logic;
20 import java.util.ArrayList;
21 import java.util.Collection;
22 import java.util.Date;
23 import java.util.List;
24 import org.turro.command.Command;
25 import org.turro.command.Context;
26 import org.turro.elephant.db.WhereClause;
27 import org.turro.elephant.util.Messages;
28 import org.turro.financials.db.FinancialsPU;
29 import org.turro.financials.document.DocumentListbox;
30 import org.turro.financials.entity.*;
31 import org.turro.financials.model.document.BatchOfType;
32 import org.turro.financials.portfolio.PortfolioSet;
33 import org.turro.financials.portfolio.RelationMode;
34 import org.turro.i18n.I_;
35 import org.turro.jpa.Dao;
36 import org.turro.plugin.dossier.IIssue;
37 import org.turro.plugin.filter.IFilterValue;
38 import org.turro.zkoss.dialog.SelectionDialog;
39 import org.turro.zkoss.filter.FilterGrid;
40 import org.turro.zul.frame.Framework;
48 public Date
relationDate =
new java.util.Date(
new java.util.Date().getTime() - (6L * 30L * 24L * 60L * 60L * 1000L));
68 return s +
I_.
get(
"Create from") +
"...";
76 return s +
I_.
get(
"Create from") +
"...";
97 dl.setMultiple(
false);
98 dl.setCheckmark(
false);
104 dl,
"80%",
"80%",
new Command() {
106 public Object execute(Context context) {
111 if(command !=
null) command.execute(context);
121 dl.setMultiple(
true);
122 dl.setCheckmark(
true);
130 dl,
"80%",
"80%",
new Command() {
132 public Object execute(Context context) {
141 Collection<DocumentWorkflow> wf = d.getWorkflows();
143 if(d.getDocumentDefinition().getId() == dw.getAncestor().getId() &&
163 if(command !=
null) command.execute(context);
170 public void delete(
final boolean close) {
183 public boolean save(List<DocumentLine> lines) {
192 return super.save(lines);
195 private Collection<Document> getPossibleBatch(
BatchOfType type) {
197 return dao.getResultList(
198 "select doc from Document as doc " +
199 "where doc.documentDefinition.id = ? " +
201 "select batch from BatchOf as batch where batch.batch = doc" +
203 "order by doc.documentDate",
207 private Collection<Document> getPossibleRelation(
BatchOfType type, FilterGrid filterGrid) {
209 List<Document> relDocs =
new ArrayList<Document>();
211 WhereClause wc = createCriteria(type, filterGrid.getValues());
212 relDocs.addAll(dao.getResultList(wc));
214 PortfolioSet ps =
new PortfolioSet();
216 ps.load(RelationMode.RELATE_FORWARD, filterGrid.getValues());
217 relDocs.addAll(ps.getDocuments());
223 wc.
addClause(
"select doc from Document as doc");
224 wc.
addClause(
"where doc.documentDefinition.id = :docDef");
226 for(IFilterValue v : values) {
230 wc.
addClause(
" select batch from BatchOf as batch where doc member of batch.documents");
232 wc.
addClause(
" select line from doc.documentLines as line ");
233 wc.
addClause(
" where line.store = :store");
236 wc.
addClause(
"order by doc.documentDate");
void addClause(String clause)
void addNamedValue(String name, Object value)
static Messages confirmDeletion()
void setShowConcepts(boolean showConcepts)
void setShowContract(boolean showContract)
BatchOfWrapper(BatchOf batchOf)
void loadBatch(BatchOfType type, final Command command)
void loadRelation(final BatchOfType type, FilterGrid filterGrid, final Command command)
String createBatchString()
void setContract(Contract contract)
void delete(final boolean close)
String createRelationString()
boolean save(List< DocumentLine > lines)
void setStore(Contract contract)
void setStore(Contract store)
void setBatch(Document batch)
Set< Document > getDocuments()
void setDocumentNumber(String documentNumber)
void setDocumentDate(Date documentDate)
void setContract(Contract contract)
Set< DocumentLine > getDocumentLines()
void setReceiptDate(Date receiptDate)
void flowFrom(Document doc, String header, DocumentWorkflow workflow)
static String get(String msg)
static Framework getCurrent()
DocumentDefinition getPortfolioDefinition()
DocumentDefinition getDocumentDefinition()