|
|
@@ -572,44 +572,42 @@ func (this *ConverseService) ModifySampleStatusByApplyMainInfo(entryNo string, r
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
// 20201026 卢传敏新增根据返回报文,更新位置信息
|
|
|
/**
|
|
|
* rack_id 盒子编号
|
|
|
* tubes 报文中返回的 位置和样本条码
|
|
|
*/
|
|
|
-func (this *ConverseService) UpdatePosition(rack_id string ,tubes []Tube){
|
|
|
+func (this *ConverseService) UpdatePosition(rack_id string, tubes []Tube) {
|
|
|
// 根据返回的报文中的盒子标识,获取盒子类型
|
|
|
- sql := "select RowNum,ColumnNum from bank_box where Barcode ='"+rack_id+"'"
|
|
|
+ sql := "select RowNum,ColumnNum from bank_box where Barcode ='" + rack_id + "'"
|
|
|
var box Box
|
|
|
this.DBE.SQL(sql).Get(&box)
|
|
|
- RowNum := box.RowNum
|
|
|
+ RowNum := box.RowNum
|
|
|
ColumnNum := box.ColumnNum
|
|
|
- glog.Info("冻存盒的行数:",RowNum,";冻存盒的列数:",ColumnNum)
|
|
|
- for i:=0;i<len(tubes);i++ {
|
|
|
+ glog.Info("冻存盒的行数:", RowNum, ";冻存盒的列数:", ColumnNum)
|
|
|
+ for i := 0; i < len(tubes); i++ {
|
|
|
no := tubes[i].No
|
|
|
id := tubes[i].Id
|
|
|
- glog.Info("样本在盒子中的位置:",no,";样本条码: ",id)
|
|
|
+ glog.Info("样本在盒子中的位置:", no, ";样本条码: ", id)
|
|
|
//计算管子在盒子中的坐标
|
|
|
- var box_x,box_y int
|
|
|
-
|
|
|
- if no%RowNum ==0{// 如果 取余数为0 则 证明该数是能被 10 整除的数 为该行 最后一个孔位
|
|
|
- box_y =10
|
|
|
- box_x = no/RowNum
|
|
|
- }else{
|
|
|
- box_y =no%RowNum
|
|
|
- box_x = (no/RowNum)+1
|
|
|
+ var box_x, box_y int
|
|
|
+
|
|
|
+ if no%ColumnNum == 0 { // 如果 取余数为0 则 证明该数是能被 10 整除的数 为该行 最后一个孔位
|
|
|
+ box_y = ColumnNum
|
|
|
+ box_x = no / ColumnNum
|
|
|
+ } else {
|
|
|
+ box_y = no % ColumnNum
|
|
|
+ box_x = (no / ColumnNum) + 1
|
|
|
}
|
|
|
|
|
|
- glog.Info("管子在盒子中的位置坐标为:",box_y,";",box_x)
|
|
|
- var position = utils.NumberToLetter(box_x)+utils.ToStr(box_y)
|
|
|
- sql ="update bank_sample set Position = '"+utils.ToStr(box_y)+";"+utils.ToStr(box_x)+"' ,PositionInfo = concat( REVERSE(SUBSTR(REVERSE(PositionInfo) FROM INSTR(REVERSE(PositionInfo),'-')+1)),'-"+position+"' ) where barcode ='"+id+"' "
|
|
|
+ glog.Info("管子在盒子中的位置坐标为:", box_y, ";", box_x)
|
|
|
+ var position = utils.NumberToLetter(box_x) + utils.ToStr(box_y)
|
|
|
+ sql = "update bank_sample set Position = '" + utils.ToStr(box_y) + ";" + utils.ToStr(box_x) + "' ,PositionInfo = concat( REVERSE(SUBSTR(REVERSE(PositionInfo) FROM INSTR(REVERSE(PositionInfo),'-')+1)),'-" + position + "' ) where barcode ='" + id + "' "
|
|
|
//执行sql 更新位置和坐标信息
|
|
|
this.DBE.Exec(sql)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
//获取当前操作样本的id, 正常和异常的
|
|
|
func (this *ConverseService) getOperaSampleIdsStr(applyType, parentId int, resp string, entity ResponseEntity) (actualIds string, abnormalIds string,) {
|
|
|
|