+++ /dev/null
-from datetime import datetime
-
-def new(last):
- try:
- return int(last)+1
- except Exception as e:
- return datetime.now().strftime("%Y%m%d")+"0001"
import json, sqlite3
import advice, auth, inventory, multicenter, patient, personnel, transaction, vaccination
-from config import cid
-
app=Flask(__name__)
app.config.from_file("config/config.json", load=json.load)
else:
raise Exception("Invalid parameter")
elif(action=="new"):
- (ok, last)=patient.list(cursor)
+ (ok, last)=patient.last(cursor)
if(not ok):
- raise exception(last)
- data={"cid": cid.new(last)}
+ raise Exception(last)
+ data={"lastCid": last["cid"]}
(ok, center)=multicenter.list(cursor)
if(not ok):
raise exception(center)
def last(cursor, col=None, mid=""):
try:
if(col=="cid"):
- result=cursor.execute("SELECT * FROM patients ORDER BY ? DESC LIMIT 1 AND mid LIKE ?", (cid, "%"+mid+"%"))
+ result=cursor.execute("SELECT * FROM patients WHERE mid LIKE ? ORDER BY cid DESC LIMIT 1", ("%"+mid+"%",))
else:
- result=cursor.execute("SELECT * FROM patients ORDER BY ? DESC LIMIT 1 AND mid LIKE ?", (pid, "%"+mid+"%"))
+ result=cursor.execute("SELECT * FROM patients WHERE mid LIKE ? ORDER BY pid DESC LIMIT 1", ("%"+mid+"%",))
return (True, result.fetchone())
except Exception as e:
+ raise(e)
return (False, e)
--- /dev/null
+arr=lastCid.trim().split(/(\d+)/)
+console.log(arr)
+for(i=arr.length; i>0; i--){
+ n=Number.parseInt(arr[i])
+ if(!Number.isNaN(n)){
+ n++
+ arr[i]=n
+ break
+ }
+}
+lastCid=arr.join("")
+document.getElementById("cid").value=lastCid
</div>
<script src="/static/bootstrap/js/bootstrap.bundle.min.js"></script>
<script src="/static/script.js"></script>
+ {% if data and data["lastCid"] %}
+ <script>lastCid="{{data["lastCid"]}}"</script>
+ <script src="/static/card-id.js"></script>
+ {% endif %}
</body>
</html>
<div class="mb-2 row">
<label class="form-label col-sm-3">Card ID</label>
<div class="col-sm-9">
- <input name="cid" placeholder="Card ID" required class="form-control" value="{{data["cid"]}}">
+ <input id="cid" name="cid" placeholder="Card ID" required class="form-control" value="{{data["cid"]}}">
</div>
</div>
<div class="mb-2 row">