;; nomad-camp -- refugee camp resource tracker
(define-data-var supply-count uint u0)
(define-data-var total-items uint u0)
(define-map supplies uint { provider: principal, item: (string-ascii 30), qty: uint, camp: (string-ascii 20), block: uint })
(define-public (log-supply (item (string-ascii 30)) (qty uint) (camp (string-ascii 20)))
(let ((id (+ (var-get supply-count) u1)))
(var-set supply-count id)
(var-set total-items (+ (var-get total-items) qty))
(map-set supplies id { provider: tx-sender, item: item, qty: qty, camp: camp, block: stacks-block-height }) (ok id)))
(define-read-only (get-supply (id uint)) (map-get? supplies id))
(define-read-only (get-total) (var-get total-items))