📄 remindereditpanel.java
字号:
buttons.addButton(CRMSButtonBar.RIGHT, buttonDelete); buttons.addButton(CRMSButtonBar.RIGHT, buttonCancel); add(wrapper, BorderLayout.CENTER); add(buttons, BorderLayout.SOUTH); // default to no SMS (just incase) checkSMS.setEnabled(false); refreshData(false); //securePanel(); CRMSUtil.fixGridBagLayout(gbl, bodyPanel); setCurrentPanel(this); } /** * Copy the panel state into something suitable to return back to. When going to a separate * panel the current panel will be lost. This copies over the relevant items onto a returnPanel. * * @return New panel to pass to the function. * @deprecated Use the new popup Window and callback systems */ private ReminderEditPanel createReturnPanel() { ReminderEditPanel returnPanel = new ReminderEditPanel(reminderID); returnPanel.textNote.setText(textNote.getText()); returnPanel.reminderFor = reminderFor; returnPanel.textFor.setText(textFor.getText()); returnPanel.priorityStore = priorityModel.getSelectedItem(); if (checkEmail.isSelected()) { //returnPanel.textEmail.setText(textEmail.getText()); returnPanel.checkEmail.setSelected(checkEmail.isSelected()); } if (checkSMS.isSelected()) { //returnPanel.textSMS = textSMS; returnPanel.checkSMS = checkSMS; } try { returnPanel.dateField.setValue(dateField.getValue()); returnPanel.timeField.setValue(timeField.getValue()); } catch (java.text.ParseException ex) { // This shouldn't happen! } return returnPanel; } /* public void activateContactSearch() { setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ReminderEditPanel returnPanel = createReturnPanel(); ContactSearchPanel panel = new ContactSearchPanel("Select Contact", returnPanel, returnPanel, textContact.getText() ); setCursor(Cursor.getDefaultCursor()); PanelManager.getInstance().activatePanel(panel); } */ public void activateStaffSearch() { StaffMemberSearchWindow window = new StaffMemberSearchWindow(); window.setCriteria(textFor.getText()); window.setDestination(this); window.display(); /* setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); ReminderEditPanel returnPanel = createReturnPanel(); String search_name = null; if (reminderFor != null && reminderFor.getIsUser() == false) { search_name = null; } else { search_name = textFor.getText(); } StaffMemberSearchPanel panel = new StaffMemberSearchPanel("Select Staff Member", returnPanel, returnPanel, search_name ); setCursor(Cursor.getDefaultCursor()); PanelManager.getInstance().activatePanel(panel); */ } /* public boolean canUserReceiveSMS(String userId) { if (reminderFor == null) return false; return reminderFor.getCanSMS(); Server server = ServerFactory.getInstance().getServer(); ServerCommand command = new ServerCommand(ReminderModule.REMINDERS_CAN_SMS); command.setParameter(ReminderModule.PARAM_REMINDER_FOR_ID, userId); ServerResponse result = server.sendCommand(command); if (result.getPart(ReminderModule.PARAM_SMS_REMINDER) != null) { return ((String) result.getPart(ReminderModule.PARAM_SMS_REMINDER)).equals("true"); } else { return false; } }*/ void refreshData() { refreshData(true); } void refreshData(boolean clean) { Server server = ServerFactory.getInstance().getServer(); if (reminderID == -1) { ServerCommand command = new ServerCommand(ReminderModule.REMINDERS_ADD_FORM); ServerResponse result = server.sendCommand(command); Date date = (Date) result.getPart("date"); dateField.setValue(date); timeField.setValue(date); // clear out the values if allowed to do so if (clean != false) { reminderFor = null; textFor.setText(""); /*reminderContact = null; textContact.setText("");*/ checkEmail.setSelected(false); //textEmail.setText(""); checkSMS.setSelected(false); //textSMS.setText(""); ComboBoxModel model = priorityModel; for (int i=0; i < model.getSize(); i++) { String entry = (String) model.getElementAt(i); if (entry.startsWith("5 ")) { model.setSelectedItem(entry); break; } } } } else { System.out.println("Loading data for reminder: " + reminderID); ServerCommand command = new ServerCommand(ReminderModule.REMINDERS_EDIT_FORM); command.setParameter(ReminderModule.PARAM_REMINDER_ID, String.valueOf(reminderID)); ServerResponse result = server.sendCommand(command); //entityPermission = (Permission) result.getPart("permission"); Date date = (Date) result.getPart("date"); dateField.setValue(date); timeField.setValue(date); if (reminderFor == null) { reminderFor = (StaffMember) result.getPart(ReminderModule.PARAM_REMINDER_FOR); setStaffMemberFound(reminderFor); } /*if (reminderContact == null) { reminderContact = (Contact) result.getPart(ReminderModule.PARAM_REMINDER_CONTACT); if (reminderContact != null) { textContact.setText(reminderContact.getFirstName() + " " + reminderContact.getLastName()); } else { textContact.setText(""); } }*/ String priority = (String) result.getPart(ReminderModule.PARAM_REMINDER_PRIORITY); ComboBoxModel model = priorityModel; for (int i=0; i < model.getSize(); i++) { String entry = (String) model.getElementAt(i); if (entry.startsWith(priority + " ")) { model.setSelectedItem(entry); break; } } // textCompany.setText((String)result.getPart(ReminderModule.PARAM_REMINDER_COMPANY)); StaffMember reminderCreator = (StaffMember) result.getPart(ReminderModule.PARAM_REMINDER_FROM); labelCreator.setText(reminderCreator.getFirstName() + " " + reminderCreator.getLastName()); boolean email = ((String)result.getPart(ReminderModule.PARAM_EMAIL_REMINDER)).equals("true"); checkEmail.setSelected(email); /*if (email) { textEmail.setText((String)result.getPart(ReminderModule.PARAM_EMAIL_ADDR)); } else { textEmail.setText(""); } textEmail.setEnabled(email);*/ boolean sms = ((String)result.getPart(ReminderModule.PARAM_SMS_REMINDER)).equals("true"); checkSMS.setSelected(sms); /*if (sms) { textSMS.setText((String)result.getPart(ReminderModule.PARAM_SMS_NUMBER)); } else { textSMS.setText(""); }*/ //textSMS.setEnabled(sms); textNote.setText((String)result.getPart(ReminderModule.PARAM_REMINDER_MESSAGE)); /* Boolean approved = Boolean.valueOf((String) result.getPart(ReminderModule.PARAM_APPROVED)); checkApprove.setSelected(approved.booleanValue()); String canApprove = (String) result.getPart(ReminderModule.PARAM_CAN_APPROVE); if (canApprove == null || !canApprove.equals("true") || approved.booleanValue()) { labelApprove.setVisible(false); checkApprove.setVisible(false); } */ } } public void setEditable(boolean editable) { textFor.setEditable(editable); buttonForSearch.setVisible(editable); comboPriority.setEnabled(editable); dateField.setEnabled(editable); timeField.setEnabled(editable); checkEmail.setEnabled(editable); checkSMS.setEnabled(editable); textNote.setEditable(editable); buttonReset.setVisible(editable); buttonAdd.setVisible(editable); buttonDelete.setVisible(editable); } /*public void securePanel() { if (entityPermission != null && !entityPermission.canWrite()) { setEditable(false); } if (entityPermission != null && entityPermission.canDelete() && reminderID > -1) { buttonDelete.setVisible(true); } else { buttonDelete.setVisible(false); } }*/ public boolean validateForm() { StringBuffer buf = new StringBuffer(); boolean valid = true; if (reminderFor == null) { valid = false; buf.append("- Please select a staff member to send the reminder to.\n"); } if (textNote.getText().trim().length() == 0) { valid = false; buf.append( "- Please enter an informative message for this reminder.\n"); } if (!valid) { buf.insert(0, "There were errors on the form you have submitted:\n\n"); buf.append("\n"); JOptionPane.showMessageDialog(this, buf.toString(),"Invalid Form Data", JOptionPane.ERROR_MESSAGE); } return valid; } /** Notify the server that the reminder on this screen is to be deleted */ public void deleteReminder() { Server server = ServerFactory.getInstance().getServer(); ServerCommand command = null; command = new ServerCommand(ReminderModule.REMINDERS_DELETE); command.setParameter(ReminderModule.PARAM_REMINDER_ID, String.valueOf(reminderID)); server.sendCommand(command); if (destination == null) PanelManager.getInstance().activatePanel(new ReminderViewPanel()); else destination.callback(this, CLOSE_WINDOW_DELETE, new Integer(reminderID)); } /** Send the reminder details in memory to the server to be stored */ protected Reminder addReminder() { Server server = ServerFactory.getInstance().getServer(); ServerCommand command = null; command = new ServerCommand(ReminderModule.REMINDERS_ADD_SUBMIT); if (reminderID != -1 ) { command.setParameter(ReminderModule.PARAM_REMINDER_ID, String.valueOf(reminderID)); } /* if (reminderContact != null) { command.setParameter(ReminderModule.PARAM_REMINDER_CONTACT_ID, String.valueOf(reminderContact.getContactID())); } else { command.setParameter(ReminderModule.PARAM_REMINDER_CONTACT_ID, "-1"); } */ try { command.setParameter(ReminderModule.PARAM_REMINDER_DATE, Reminder.df.format(dateField.getValue())); command.setParameter(ReminderModule.PARAM_REMINDER_TIME, Reminder.tf.format(timeField.getValue())); } catch (ParseException ex) { throw new RuntimeException(ex); } command.setParameter(ReminderModule.PARAM_REMINDER_FOR_ID, String.valueOf(reminderFor.getUID())); /*if (reminderContact != null) { command.setParameter(ReminderModule.PARAM_REMINDER_FROM, String.valueOf(reminderContact.getContactID())); }*/ command.setParameter(ReminderModule.PARAM_EMAIL_REMINDER, String.valueOf(checkEmail.isSelected())); /*if (checkEmail.isSelected()) { command.setParameter(ReminderModule.PARAM_EMAIL_ADDR, textEmail.getText()); } else { command.setParameter(ReminderModule.PARAM_EMAIL_ADDR, null); }*/ command.setParameter(ReminderModule.PARAM_SMS_REMINDER, String.valueOf(checkSMS.isSelected())); /*if (checkSMS.isSelected()) { //command.setParameter(ReminderModule.PARAM_SMS_NUMBER, textSMS.getText()); } else { command.setParameter(ReminderModule.PARAM_SMS_NUMBER, null); }*/ // command.setParameter(ReminderModule.PARAM_REMINDER_COMPANY, textCompany.getText()); command.setParameter(ReminderModule.PARAM_REMINDER_MESSAGE, textNote.getText()); command.setParameter(ReminderModule.PARAM_REMINDER_PRIORITY, (String) comboPriority.getSelectedItem()); System.out.println("Set priority to: " + (String) comboPriority.getSelectedItem()); /*if (checkApprove.isVisible()) { command.setParameter(ReminderModule.PARAM_APPROVED, String.valueOf(checkApprove.isSelected())); }*/ ServerResponse sr = server.sendCommand(command); if (sr != null && destination != null) { return (Reminder) sr.getPart("reminder"); } return null; } public Class getPanel(int i) { return null; } /*public void setContactFound(Contact contact) { reminderContact = contact; textContact.setText(contact.getFirstName() + " " + contact.getLastName()); }*/ public void callback(Object source, int mode, Object data) { if (source instanceof StaffMemberSearchWindow) { if (mode == StaffMemberSearchPanel.STAFF_SELECTED) { setStaffMemberFound((StaffMember)data); } } } public void setStaffMemberFound(StaffMember staffMember) { System.out.println("setStaffMemberFound: " + staffMember); reminderFor = staffMember; if (staffMember == null) { textFor.setText(""); checkSMS.setEnabled(false); } else { textFor.setText(staffMember.getFirstName() + " " + staffMember.getLastName()); System.out.println(staffMember); System.out.println("Can SMS: " +staffMember.getCanSMS()); // Make sure that user is allowed to send SMS (may have exceeded // monthly count, or not be in crmssms group. boolean cansms = staffMember.getCanSMS(); if (cansms == false) checkSMS.setSelected(false); checkSMS.setEnabled(cansms); } /* if (!staffMember.getCanSMS()) { //canUserReceiveSMS(reminderFor.getUID())) { checkSMS.setSelected(false); textSMS.setText(""); checkSMS.setEnabled(false); textSMS.setEnabled(false); } */ }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -