|
@ -13,40 +13,50 @@ var recChan = make(chan qmmodel.ReclinerReclst, 100) //定义一个调度任务 |
|
|
|
|
|
|
|
|
var printNum = 50 |
|
|
var printNum = 50 |
|
|
|
|
|
|
|
|
|
|
|
func CreateRecPrintTaskTick() { |
|
|
|
|
|
tick := time.Tick(1 * time.Second) |
|
|
|
|
|
for { |
|
|
|
|
|
select { |
|
|
|
|
|
case <-tick: |
|
|
|
|
|
CreateRecPrintTask() |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
/****查询要打印的任务**********/ |
|
|
/****查询要打印的任务**********/ |
|
|
func CreateRecPrintTask() { |
|
|
func CreateRecPrintTask() { |
|
|
for { |
|
|
|
|
|
//创建继承Baxkground的子节点Context
|
|
|
|
|
|
ctx, cancel := context.WithCancel(context.Background()) |
|
|
|
|
|
defer cancel() |
|
|
|
|
|
go doTaskPrintRec(ctx) |
|
|
|
|
|
|
|
|
|
|
|
data := make([]qmmodel.ReclinerReclst, 0) |
|
|
|
|
|
recList := make([]int, 0) |
|
|
|
|
|
//第一步,查询要打印的数据
|
|
|
|
|
|
var serviceOfRec = qmsvr.NewReclinerReclstService() |
|
|
|
|
|
|
|
|
//创建继承Baxkground的子节点Context
|
|
|
|
|
|
ctx, cancel := context.WithCancel(context.Background()) |
|
|
|
|
|
defer cancel() |
|
|
|
|
|
go doTaskPrintRec(ctx) |
|
|
|
|
|
|
|
|
data, err := serviceOfRec.SelectUnPrint(printNum) |
|
|
|
|
|
if err != nil { |
|
|
|
|
|
glog.InfoExtln("返修打印错误日志","err:",err) |
|
|
|
|
|
return |
|
|
|
|
|
} |
|
|
|
|
|
//锁定
|
|
|
|
|
|
for _, v := range data { |
|
|
|
|
|
recList = append(recList, v.RecNr) |
|
|
|
|
|
} |
|
|
|
|
|
err = serviceOfRec.UpdateUnPrint(recList) |
|
|
|
|
|
if err != nil { |
|
|
|
|
|
glog.InfoExtln("返修打印错误日志","err:",err) |
|
|
|
|
|
time.Sleep(1 * time.Second) |
|
|
|
|
|
continue |
|
|
|
|
|
} |
|
|
|
|
|
//第二步,把所有的服务调度放到channel
|
|
|
|
|
|
for _, v := range data { |
|
|
|
|
|
recChan <- v |
|
|
|
|
|
} |
|
|
|
|
|
time.Sleep(1 * time.Second) |
|
|
|
|
|
|
|
|
data := make([]qmmodel.ReclinerReclst, 0) |
|
|
|
|
|
recList := make([]int, 0) |
|
|
|
|
|
//第一步,查询要打印的数据
|
|
|
|
|
|
var serviceOfRec = qmsvr.NewReclinerReclstService() |
|
|
|
|
|
data, err := serviceOfRec.SelectUnPrint(printNum) |
|
|
|
|
|
if err != nil { |
|
|
|
|
|
glog.InfoExtln("返修错误", "err:", err) |
|
|
|
|
|
return |
|
|
|
|
|
} |
|
|
|
|
|
if len(data) == 0 { |
|
|
|
|
|
return |
|
|
} |
|
|
} |
|
|
|
|
|
//锁定
|
|
|
|
|
|
for _, v := range data { |
|
|
|
|
|
recList = append(recList, v.RecNr) |
|
|
|
|
|
} |
|
|
|
|
|
err = serviceOfRec.UpdateUnPrint(recList) |
|
|
|
|
|
if err != nil { |
|
|
|
|
|
glog.InfoExtln("返修错误", "err:", err) |
|
|
|
|
|
return |
|
|
|
|
|
} |
|
|
|
|
|
//第二步,把所有的服务调度放到channel
|
|
|
|
|
|
for _, v := range data { |
|
|
|
|
|
recChan <- v |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
/********打印逻辑************/ |
|
|
/********打印逻辑************/ |
|
|