Coder Social home page Coder Social logo

ksm's People

Contributors

sah-comp avatar

Watchers

 avatar

ksm's Issues

Module "Machine": Fileupload

Implement a file upload feature. To migrate the files already uploaded we need to get our hands on the physical artifacts.

Contract module

  • Change current "contract" stuff to "customer owns machine" information
  • Add fieldsets to contracttype
  • Allow entering fieldsets depending on choosen contracttype in "new" contract record
  • When a field within a fieldset is not set do not output it in the text
  • Copy contract text into contract bean on creating the bean
  • Keep track of document chains, e.g. make a quote, produce a order confirmation and so on

Module "Article": Multiple Suppliers per Article

Each article may have a supplier, the main supplier. Along that supplier, there shall be additional backup suppliers.

Questions:

How to handle prices in general. Each supplier has different purchase prices for the article. There might be different sales prices, or only one. Talk about this feature.

Feedback from user interview v1.0-beta.1

In this issue you find all todos that where identified in user interviews. It might be useful to isolate certain items as dedicated issue. The interview took place on 2020-10-22 with Ms. V. and on 2020-10-23 with Mr. G.

General stuff

  • Completed appointments are (currently, using stand-alone excel sheets) archived on a weekly basis
  • When migrating appointments from the current database there are "deleted" appointments found
  • There are much more appointments than there are in the current solution (1287 opposite 4309)

Appointments

  • Appointments may be stored without a related machine
  • Appointment duration has to be editable
  • Technician shall be selectable from user list
  • Show details of customer or machine in appointment form
  • Only one "notes"-field
  • Easy function to change one or more appointment dates to the next (working) day or a freely enterable new date

Labels

  • "Fällig am" shall be "Datum"
  • "Maschine" shall be "Gerät"

Servicelist

  • Textfield has to be fully readable, while being editable
  • Easy option to set the appointment to "finished"
  • List has to be printable (via PDF)
  • Missing field "machine brand"
  • Missing field "duration"
  • All kinds of appointments may appear in service list view, not only "service appointments"
  • Criteria to appear in service list are confirmed is true and completed is false
  • Changed sorting to date, time, fix, person.name and machine.name and machine serial number
  • Easy function to change one or more appointment dates to the next (working) day

Article

  • Omit column "Filter" in list view

Browser Issues

  • CSS :target does not work (likely because of scrolledToFix offset)

Addressbook

  • Tab: contacts
  • Tab: Locations
  • Tab with related machines
  • Tab with related contracts

Related records

In general it would be great to allow filtering and sorting of related records when viewed in a parents bean tab. If the related records are editable or a new related record can be added directly in the tab view it should be possible to reach the "add" function without scrolling to the bottom of the list (of related records).

  • Machine, tab article (installed part): "Add" button has to be in reach, not (only) at the end of the least
  • Machine, tab article: Display if the article is "original" in the autocomplete label

Preset Data or Relations from GET Parameters

Precondition: There is a form showing a bean which may be related to another bean. You could add a link to your form showing customer information whichs says "add a new invoice". Clicking that link or button should feed the new invoice bean with data from the just view customer.

Chartjs won't show labels on the x- and y axis

Using version 2 of ChartJS. Although defined in options I can not see the labels on the x- and y axis:

$result = [

'scales' => [
    'xAxes' => [
        'display' => true,
        'scaleLabel' => [
            'display' => true,
            'labelString' => I18n::__('article_chart_xaxis_label')
        ]
    ],
    'yAxes' => [
        'display' => true,
        'scaleLabel' => [
            'display' => true,
            'labelString' => I18n::__('article_chart_yaxis_label')
        ]
    ]
]

Expected bean but got :array in Addressbook

Steps to reproduce:

  1. Navigate to tab "Contact" of a record in addressbook
  2. Add a contact
  3. Add a contact info, e.g. phone number
  4. Click "-" on the contact entry
  5. Choose "Save and edit"
  6. Click "Apply" or "Run"

You will get a Server Error 500: Expected bean but got :array

Module "Machine": Tab "Article"

Allow adding an article as installed part and allow to overwrite the articles prices (purchase, sale) with the entered values optionally.

Global search

A search field, that searches all viable objects. The searchterm will be searched for in all user editable working data and give a list of all hits on one page.

Interim feedback

General

  • Contact information shall be ordered
  • Color when hovering over table rows shall be darker

Articlelist

  • Sort order of original shall be descending

Servicelist

  • Table rows shall have border bottom
  • Column date has to be wider

Optional features

Here is a list of features found in the old application. They may never be implemented, but are listed here for completion.

  • Calendar view on appointment beans

Module "Machine": Adding installed part (article)

foreach ($this->bean->ownInstalledpart as $id => $installedpart) {

How to handle a blank installedpart bean when updating a machine bean. When editing a machine in the frontend a blank record is added to allow the user to quickly add a installedpart record to a machine. If he or she doesn't we have to get rid of it again, because otherwise RB will throw an exception.

Module "any": Wrong data types

Overall several attributes which seem to be expecting numbers are filled with alphanumeric information. E.g. in machine beans there is buildyear or maxload or weight or height. I could go on. These information can not be handled well and I had to change form input types from number to text.

Feedback from user interview v1.0-beta.2.1 part 2

General

  • Shortinfo in addressbook list
  • Label "Organisation" shall be "Firma"
  • Text-filter method shall be like instead of bw (begins with)
  • Make Tab "Details" default on machine
  • Link in tab "Contract" should lead to contract instead of contract type
  • Appointments added through interval have to be set to confirmed = false
  • Add field "internal number" to machine list attributes
  • Double-clicking in list views should open the edit form
  • Appointments can be deleted
  • Appointment list "multiple select" larger font-size and more than 2.5 items visible for easier selection
  • Appointment: Show machine brand, type, S/N and internal number in selection list when adding appointments
  • Odd lines in list views shall be a little darker

Servicelist

  • Shortinfo in service list
  • Wider field "date"
  • Wider field "starttime"
  • Narrow field "duration"
  • Narrow field "internal number"
  • Narrow field "location"
  • Narrow field "customer"
  • Narrow field "receipt"
  • Location: Show city first
  • Location: add tooltip
  • Serialnumber Tooltip
  • Internal number: Tooltip
  • Dateformat "receipt": dd.mm.yy
  • Wider field "date for PDF"
  • Allow date range in date field for PDF
  • Sorting: date, fix, starttime
  • Color columns customer and so on
  • DataTables Filter

Database

  • Missing field "appointment_id" in appointment

Todo

  • Adding file uploads to machine beans

Module "Machine": Finding original installed article is sometimes problematic

When installing an article it is sometimes problematic to find the original article, because the article code occurs very often. For example searching for article code 3798793 will find more than ten articles and none of the first ones shown in autocomplete is the original article needed. Otherwise user does not know more information about the article to further break down the search list.

Feedback from user interview v1.0-beta.2.1

Addressbook

  • Show postal address in list view
  • More spacing between contacts

Appointment

  • Show contacts in list view
  • Clicking on contact shall lead to addressbook
  • Customer autocomplete shall show customer post address
  • List has to be printable
  • Location in appointment shall be postal address, if not otherwise defined

Machine

  • Installed parts have to be editable
  • Newly added installed parts have to be immediately be handled by Datatables

Servicelist

  • Reduce font-size to 70%
  • Smaller columns: Customer, Contact, Machinebrand, Machine, Serialnumber
  • Sorting: Date, Time, Fix, Customer, Machine and Serialnumber
  • Einsatzort shall be Standort
  • Print a day-by-day list via PDF, print only appointments of one day

Group appointments in service list by serial number

Quite often there several types of works to do on the same machine. These are managed each and every on in a specific appointment. These appointments shall be grouped into one entry of the list if possible or at least be group visual to make it easier to spot that only one machine is involved.

Create new appointment directly from machine

A new appointment can currently not be created directly from a machine, because an appointment needs the customer first to determine the machine.

Starting from a machine we would first have to lookup the contracts and only if there is just one we could create a new appointment via that contract.

Feedback from user interview v1.0-beta.3

Servicelist

  • Include name of contact in contact tooltip
  • Column date width smaller
  • Column time width smaller

Addressbook

  • Better optical division of contacts

Machine

  • Article data readonly
  • Replace column "original" with "supplier"

Article

  • Add field "lastchange" to form for manual input

General

  • Highlight table rows on mouse-over

Date range in filter

When filtering in a date column, it shall be possible to enter a date range.

E.g. user wants to see all appointments beginning from May 23 und Dec 15 of the year 2020, he may enter something like "2020-05-23 ... 2020-12-15" in the criteria field of the column and the getSql() will accomplish a query like (date >= '2020-05-23' AND date <= '2020-12-15').

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.