3分鐘左右
t_erp_location 庫存表(4000行) 如果是40000呢
code time location number
2000 20180101 a1-1 10
2000 20170102 b1-1 20
2000 20180103 c1-1 5
2000 20180101 d1-1 -5
2000 20180104 a2-1 -4
2000 20180101 a2-1 -9
2001 20180101 d1-1 15
2001 20180104 a2-1 14
2001 20180101 a2-1 -9
(一批車)t_orderdetail (因為對接其他系統,不能夠合併相同產品) (600行,如果是6w呢)
大概20車左右,不同車與不同的訂單(t_car_product)
根據 t_orderdetail與t_erp_location匹配(1:當
訂單詳細行的產品,例如,要5件,有兩個庫位有這個產品【time為20180101有4件,time為20180102有6件,那就先拿20180102上的5件】,減去20180102上的5件,修改為1。2:其他的按照先進倉庫的拿,乙個卡板不夠,就拿多個)。
最後生成乙個出庫表,生成的資料插入到資料表裡面. 讓分揀員指導產品在哪個位置拿多少
因為資料量太大(空間換時間),後面改為根據每乙個車去生成(一車大概4s),
(個人做法:程式是通過在記憶體中去匹配的兩個for迴圈 , map>,對於修改庫位的number,是難點)
加入執行緒池,(同步的地方,不同的車裡面有很多相同的產品,又要修改t_erp_loaction的產品值 ,同步的地方太多了,不像下單的減庫存,加個鎖就行了,太多地方要修改了,同步的地方太多了,當資料量很多時怎麼辦)
佇列 先進先出
看前面的是什麼型別 指標 普通 出現指標指向空報錯的情況下,傳參不能為空,可以傳個空間的位址給他 queue front next null 從尾進 先進先出 define crt secure no warnings pragma once include include include incl...
佇列實現先進先出
1 入隊,如例 q.push x 將x 接到佇列的末端。2 出隊,如例 q.pop 彈出佇列的第乙個元素,注意,並不會返回被彈出元素的值。3 訪問隊首元素,如例 q.front 即最早被壓入佇列的元素。4 訪問隊尾元素,如例 q.back 即最後被壓入佇列的元素。5 判斷佇列空,如例 q.empty...
先進先出淘汰演算法
c語言實現作業系統最佳淘汰演算法 include include define length 20 定義陣列長度 int bwolist length 淘汰序列 void initlist int arr int bwo int init,int arr if flag 0 if temflag 1...