new module: custom range report

fix bugs:
- inconsistent editing sales detail

changes:
- remove unit_id from sales_detail table

new features:
- saled product grid
- purchased product grid