|
|
@@ -291,7 +291,7 @@ class WorkOrderSpotCheck extends Api{
|
|
|
}
|
|
|
// echo "<pre>";print_r($matchedOrder);echo "</pre>";die;
|
|
|
|
|
|
- //【查询产量计酬历史记录】
|
|
|
+ //产量进度汇总记录
|
|
|
$rows = db()->table('设备_产量计酬')->alias('c')
|
|
|
// ->join('工单_印件资料 y', 'c.订单编号 = y.订单编号', 'left')
|
|
|
->field('c.款号, c.订单编号, c.子订单编号, c.sys_rq as 上报时间, c.尺码, c.数量')
|
|
|
@@ -325,12 +325,72 @@ class WorkOrderSpotCheck extends Api{
|
|
|
$formattedRows[$key]['裁剪数'] += $item['数量'];
|
|
|
}
|
|
|
}
|
|
|
- // 重置索引为连续数字索引
|
|
|
+ //重置索引为连续数字索引
|
|
|
$finalResult = array_values($formattedRows);
|
|
|
+
|
|
|
+ // 报工历史记录
|
|
|
+ $existingRecords = \db('设备_产量计酬')->alias('c')
|
|
|
+ ->field('
|
|
|
+ c.订单编号, c.子订单编号, c.款号, c.工序编号, c.工序名称, c.尺码, c.数量, c.sczl_jtbh,
|
|
|
+ c.尾包,c.UniqId,c.ci_num,c.s_num,c.sys_rq, c.serial,
|
|
|
+ j.款式,
|
|
|
+ y.zdtotal, y.sctotal, y.颜色,y.颜色备注
|
|
|
+ ')
|
|
|
+ ->join('工单_印件资料 y', 'c.子订单编号 = y.子订单编号', 'left')
|
|
|
+ ->join('工单_基本资料 j', 'c.订单编号 = j.订单编号', 'left')
|
|
|
+ ->where('c.子订单编号', $params['order'])
|
|
|
+ ->where('c.工序名称', $params['code'])
|
|
|
+// ->where('c.sczl_jtbh', $params['sys_sbID'])
|
|
|
+ ->whereNull('c.mod_rq') // 查询未删除数据
|
|
|
+ ->where(function($query) {
|
|
|
+ $query->whereNotNull('y.ck_rq')->where('y.ck_rq', '<>', '');
|
|
|
+ }) // 查询出库数据
|
|
|
+ ->order('c.UniqId', 'desc')
|
|
|
+ ->distinct('c.子订单编号')
|
|
|
+ ->select();
|
|
|
+ $sizeSummary = [];
|
|
|
+ $sizes = [];
|
|
|
+ foreach ($existingRecords as $record) {
|
|
|
+ $size = $record['尺码'];
|
|
|
+ $quantity = $record['数量'];
|
|
|
+ $serial = $record['serial'];
|
|
|
+ // 如果尺码还没有出现过,加入尺码列表
|
|
|
+ if (!in_array($size, $sizes)) {
|
|
|
+ $sizes[] = $size;
|
|
|
+ }
|
|
|
+ if (!isset($sizeSummary[$record['UniqId']])) {
|
|
|
+ $sizeSummary[$record['UniqId']] = [
|
|
|
+ 'UniqId' => $record['UniqId'],
|
|
|
+ '订单编号' => $record['订单编号'],
|
|
|
+ '子订单编号' => $record['子订单编号'],
|
|
|
+ '上报数量' => $record['s_num'],
|
|
|
+ '剩余数量' => $record['ci_num'],
|
|
|
+ '次品数量' => $record['数量'] - $record['ci_num'],
|
|
|
+ '生产款号' => $record['款号'],
|
|
|
+ '尺码' => $record['尺码'],
|
|
|
+ '工序编号' => $record['工序编号'],
|
|
|
+ '工序名称' => $record['工序名称'],
|
|
|
+ '数量' => $quantity,
|
|
|
+ '尾包' => $record['尾包'] == 1 ? '是' : '否',
|
|
|
+ '颜色' => $record['颜色备注'],
|
|
|
+ '组别' => $record['sczl_jtbh'],
|
|
|
+ '款式' => $record['款式'],
|
|
|
+ 'serial' => '第('.$serial.')包',
|
|
|
+ 'sys_rq' => $record['sys_rq']
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 将 $sizeSummary 转换为索引数组
|
|
|
+ $sizeSummary = array_values($sizeSummary);
|
|
|
+ // 对 $sizeSummary 按 sys_rq 降序排序
|
|
|
+ usort($sizeSummary, function ($a, $b) {
|
|
|
+ return strtotime($b['UniqId']) - strtotime($a['UniqId']);
|
|
|
+ });
|
|
|
$result = [
|
|
|
'list' => $matchedOrder,
|
|
|
'headers' => $headers,
|
|
|
- 'table' => $finalResult
|
|
|
+ 'table' => $finalResult,
|
|
|
+ 'bgtable' => $existingRecords
|
|
|
];
|
|
|
}else {
|
|
|
|
|
|
@@ -430,7 +490,7 @@ class WorkOrderSpotCheck extends Api{
|
|
|
$where['c.工序编号'] = '3';
|
|
|
$where['c.mod_rq'] = null;
|
|
|
$existingRecords = \db('设备_产量计酬')->alias('c')
|
|
|
- ->field('c.订单编号, c.子订单编号, c.款号, c.工序编号, c.工序名称, c.尺码, c.数量, c.sczl_jtbh, c.sczl_bh, c.尾包, c.sys_rq, c.serial, c.serial_num,
|
|
|
+ ->field('c.订单编号, c.子订单编号, c.款号, c.工序编号, c.工序名称, c.尺码, c.数量, c.sczl_jtbh, c.sczl_bh, c.尾包, c.sys_rq, c.serial, c.serial_num,c.UniqId,
|
|
|
y.zdtotal, y.sctotal, j.款式, y.颜色,y.颜色备注, CAST(c.serial_num AS SIGNED) as serial_num_numeric')
|
|
|
->join('工单_印件资料 y', 'c.子订单编号 = y.子订单编号', 'left')
|
|
|
->join('工单_基本资料 j', 'c.订单编号 = j.订单编号', 'left')
|
|
|
@@ -468,6 +528,7 @@ class WorkOrderSpotCheck extends Api{
|
|
|
'组别' => $record['sczl_bh'],
|
|
|
'serial' => [], // 流水号数组
|
|
|
'sys_rq' => $record['sys_rq'],
|
|
|
+ 'UniqId' => $record['UniqId'],
|
|
|
'尺码数据' => [] // 用于存储每个尺码对应的流水号和数量
|
|
|
];
|
|
|
}
|
|
|
@@ -695,6 +756,9 @@ class WorkOrderSpotCheck extends Api{
|
|
|
$serial = \db('设备_产量计酬')
|
|
|
->field('子订单编号, MAX(CAST(serial AS UNSIGNED)) as serial, MAX(CAST(serial_num AS UNSIGNED)) as serial_num')
|
|
|
->where('子订单编号', $order)
|
|
|
+ ->where(function($query) {
|
|
|
+ $query->whereNull('mod_rq')->whereOr('mod_rq', '');
|
|
|
+ }) // 查询未删除数据
|
|
|
// ->where('sczl_jtbh', $params['sys_sbID'])
|
|
|
->group('子订单编号')
|
|
|
->find();
|
|
|
@@ -821,20 +885,6 @@ class WorkOrderSpotCheck extends Api{
|
|
|
'serial' => $paramArray[6],
|
|
|
])
|
|
|
->find();
|
|
|
-
|
|
|
-
|
|
|
- // 获取当前手工机台上报的数据
|
|
|
- $res = \db('设备_产量计酬')
|
|
|
- ->where([
|
|
|
- '子订单编号' => $paramArray[0],
|
|
|
- '尺码' => $paramArray[3],
|
|
|
- '数量' => $paramArray[4],
|
|
|
- 'serial' => $paramArray[6],
|
|
|
- 'sczl_jtbh' => $params['sys_sbID'],
|
|
|
- 'Mod_rq' => null,
|
|
|
- ])
|
|
|
- ->select();
|
|
|
-
|
|
|
// 判断是否成功获取到数据
|
|
|
if ($Uniqid) {
|
|
|
$orderlist = \db('工单_基本资料')
|
|
|
@@ -849,25 +899,38 @@ class WorkOrderSpotCheck extends Api{
|
|
|
$this->error('当前扫码小票无效');
|
|
|
}
|
|
|
|
|
|
+ // 获取当前手工机台上报的数据
|
|
|
+ $res = \db('设备_产量计酬')
|
|
|
+ ->where([
|
|
|
+ '子订单编号' => $paramArray[0],
|
|
|
+ '尺码' => $paramArray[3],
|
|
|
+ '数量' => $paramArray[4],
|
|
|
+ 'serial' => $paramArray[6],
|
|
|
+ 'sczl_jtbh' => $params['sys_sbID'],
|
|
|
+ 'mod_rq' => null,
|
|
|
+ ])
|
|
|
+ ->order('UniqId desc')
|
|
|
+ ->find();
|
|
|
if (empty($res)) {
|
|
|
$ci_num = $paramArray[4];
|
|
|
} else {
|
|
|
- // 累加 s_num
|
|
|
- $total_s_num = 0;
|
|
|
- foreach ($res as $item) {
|
|
|
- $total_s_num += $item['s_num'];
|
|
|
- }
|
|
|
- if ($total_s_num >= $paramArray[4]) {
|
|
|
- $ci_num = 0;
|
|
|
- } else {
|
|
|
- $ci_num = $res[0]['ci_num'];
|
|
|
- }
|
|
|
+ $ci_num = $res["ci_num"];
|
|
|
+// // 累加 s_num
|
|
|
+// $total_s_num = 0;
|
|
|
+// foreach ($res as $item) {
|
|
|
+// $total_s_num += $item['s_num'];
|
|
|
+// }
|
|
|
+// if ($total_s_num >= $paramArray[4]) {
|
|
|
+// $ci_num = 0;
|
|
|
+// } else {
|
|
|
+// $ci_num = $res[0]['ci_num'];
|
|
|
+// }
|
|
|
}
|
|
|
|
|
|
// 判断是否已报工并给出提示
|
|
|
- if (!empty($res) && $paramArray[4] == $res[0]['s_num'] || $ci_num === '' || $ci_num === 0) {
|
|
|
- $this->error('已上报,无需再次报工');
|
|
|
- }
|
|
|
+// if (!empty($res) && $res["ci_num"] == 0) {
|
|
|
+// $this->error('已上报,无需再次报工');
|
|
|
+// }
|
|
|
$result = [
|
|
|
'sys_sbID' => $params['sys_sbID'],//设备编号
|
|
|
'ci_num' => $ci_num,//剩余数量
|
|
|
@@ -923,6 +986,7 @@ class WorkOrderSpotCheck extends Api{
|
|
|
'订单编号' => $record['订单编号'],
|
|
|
'子订单编号' => $record['子订单编号'],
|
|
|
'上报数量' => $record['s_num'],
|
|
|
+ '剩余数量' => $record['ci_num'],
|
|
|
'次品数量' => $record['数量'] - $record['ci_num'],
|
|
|
'生产款号' => $record['款号'],
|
|
|
'尺码' => $record['尺码'],
|
|
|
@@ -961,10 +1025,11 @@ class WorkOrderSpotCheck extends Api{
|
|
|
')
|
|
|
->join('工单_印件资料 y', 'c.子订单编号 = y.子订单编号', 'left')
|
|
|
->join('工单_基本资料 j', 'c.订单编号 = j.订单编号', 'left')
|
|
|
- ->where('c.订单编号', $order)
|
|
|
+ ->where('c.订单编号', 'like', '%' . explode('DC',$order)[1] . '%')
|
|
|
->where('c.工序名称', $params['code'])
|
|
|
->where('c.sczl_jtbh', $params['sys_sbID'])
|
|
|
->whereNull('c.mod_rq') // 查询未删除数据
|
|
|
+ ->order('UniqId desc')
|
|
|
->select();
|
|
|
// 初始化返回数据的结构
|
|
|
$reslist = [];
|
|
|
@@ -984,6 +1049,7 @@ class WorkOrderSpotCheck extends Api{
|
|
|
'订单编号' => $record['订单编号'],
|
|
|
'子订单编号' => $record['子订单编号'],
|
|
|
'上报数量' => $record['s_num'],
|
|
|
+ '剩余数量' => $record['ci_num'],
|
|
|
'次品数量' => $record['数量'] - $record['ci_num'],
|
|
|
'生产款号' => $record['款号'],
|
|
|
'尺码' => $record['尺码'],
|
|
|
@@ -1028,17 +1094,6 @@ class WorkOrderSpotCheck extends Api{
|
|
|
])
|
|
|
->find();
|
|
|
|
|
|
- // 获取当前手工机台上报的数据
|
|
|
- $res = \db('设备_产量计酬')
|
|
|
- ->where([
|
|
|
- '子订单编号' => $paramArray[0],
|
|
|
- '尺码' => $paramArray[3],
|
|
|
- '数量' => $paramArray[4],
|
|
|
- 'serial' => $paramArray[6],
|
|
|
- 'sczl_jtbh' => $params['sys_sbID'],
|
|
|
- 'Mod_rq' => null,
|
|
|
- ])
|
|
|
- ->select();
|
|
|
|
|
|
// 获取上一个机台是否已上报过
|
|
|
$baogonglist = \db('设备_产量计酬')
|
|
|
@@ -1069,25 +1124,41 @@ class WorkOrderSpotCheck extends Api{
|
|
|
$this->error('当前扫码小票无效');
|
|
|
}
|
|
|
|
|
|
+ // 获取当前手工机台上报的数据
|
|
|
+ $res = \db('设备_产量计酬')
|
|
|
+ ->where([
|
|
|
+ '子订单编号' => $paramArray[0],
|
|
|
+ '尺码' => $paramArray[3],
|
|
|
+ '数量' => $paramArray[4],
|
|
|
+ 'serial' => $paramArray[6],
|
|
|
+ 'sczl_jtbh' => $params['sys_sbID'],
|
|
|
+ 'mod_rq' => null,
|
|
|
+ ])
|
|
|
+ ->order('UniqId desc')
|
|
|
+ ->find();
|
|
|
if (empty($res)) {
|
|
|
$ci_num = $paramArray[4];
|
|
|
} else {
|
|
|
- // 累加 s_num
|
|
|
- $total_s_num = 0;
|
|
|
- foreach ($res as $item) {
|
|
|
- $total_s_num += $item['s_num'];
|
|
|
- }
|
|
|
- if ($total_s_num >= $paramArray[4]) {
|
|
|
- $ci_num = 0;
|
|
|
- } else {
|
|
|
- $ci_num = $res[0]['ci_num'];
|
|
|
- }
|
|
|
+ $ci_num = $res["ci_num"];
|
|
|
+// // 累加 s_num
|
|
|
+// $total_s_num = 0;
|
|
|
+// foreach ($res as $item) {
|
|
|
+// $total_s_num += $item['s_num'];
|
|
|
+// }
|
|
|
+// if ($total_s_num >= $paramArray[4]) {
|
|
|
+// $ci_num = 0;
|
|
|
+// } else {
|
|
|
+// $ci_num = $res[0]['ci_num'];
|
|
|
+// }
|
|
|
}
|
|
|
|
|
|
// 判断是否已报工并给出提示
|
|
|
- if (!empty($res) && $paramArray[4] == $res[0]['s_num'] || $ci_num === '' || $ci_num === 0) {
|
|
|
- $this->error('已上报,无需再次报工');
|
|
|
- }
|
|
|
+// if (!empty($res) && $paramArray[4] == $res[0]['s_num'] || $ci_num === '' || $ci_num === 0) {
|
|
|
+// $this->error('已上报,无需再次报工');
|
|
|
+// }
|
|
|
+// if (!empty($res) && $res["ci_num"] == 0) {
|
|
|
+// $this->success('已上报,无需再次报工');
|
|
|
+// }
|
|
|
$result = [
|
|
|
'sys_sbID' => $params['sys_sbID'],//设备编号
|
|
|
'ci_num' => $ci_num,//剩余数量
|
|
|
@@ -1118,6 +1189,7 @@ class WorkOrderSpotCheck extends Api{
|
|
|
->join('工单_印件资料 y', 'c.子订单编号 = y.子订单编号', 'left')
|
|
|
->join('工单_基本资料 j', 'c.订单编号 = j.订单编号', 'left')
|
|
|
->where('c.子订单编号', $paramArray[0])
|
|
|
+ ->where('c.工序名称', '大烫')
|
|
|
->where('c.sczl_jtbh', $params['sys_sbID'])
|
|
|
->whereNull('c.mod_rq') // 查询未删除数据
|
|
|
->where(function($query) {
|
|
|
@@ -1142,6 +1214,7 @@ class WorkOrderSpotCheck extends Api{
|
|
|
'订单编号' => $record['订单编号'],
|
|
|
'子订单编号' => $record['子订单编号'],
|
|
|
'上报数量' => $record['s_num'],
|
|
|
+ '剩余数量' => $record['ci_num'],
|
|
|
'次品数量' => $record['数量'] - $record['ci_num'],
|
|
|
'生产款号' => $record['款号'],
|
|
|
'尺码' => $record['尺码'],
|
|
|
@@ -1180,10 +1253,11 @@ class WorkOrderSpotCheck extends Api{
|
|
|
')
|
|
|
->join('工单_印件资料 y', 'c.子订单编号 = y.子订单编号', 'left')
|
|
|
->join('工单_基本资料 j', 'c.订单编号 = j.订单编号', 'left')
|
|
|
- ->where('c.订单编号', $order)
|
|
|
+ ->where('c.订单编号', 'like', '%' . explode('DC',$order)[1] . '%')
|
|
|
->where('c.工序名称', $params['code'])
|
|
|
->where('c.sczl_jtbh', $params['sys_sbID'])
|
|
|
->whereNull('c.mod_rq') // 查询未删除数据
|
|
|
+ ->order('UniqId desc')
|
|
|
->select();
|
|
|
// 初始化返回数据的结构
|
|
|
$reslist = [];
|
|
|
@@ -1203,6 +1277,7 @@ class WorkOrderSpotCheck extends Api{
|
|
|
'订单编号' => $record['订单编号'],
|
|
|
'子订单编号' => $record['子订单编号'],
|
|
|
'上报数量' => $record['s_num'],
|
|
|
+ '剩余数量' => $record['ci_num'],
|
|
|
'次品数量' => $record['数量'] - $record['ci_num'],
|
|
|
'生产款号' => $record['款号'],
|
|
|
'尺码' => $record['尺码'],
|
|
|
@@ -1247,18 +1322,6 @@ class WorkOrderSpotCheck extends Api{
|
|
|
])
|
|
|
->find();
|
|
|
|
|
|
- // 获取当前手工机台上报的数据
|
|
|
- $res = \db('设备_产量计酬')
|
|
|
- ->where([
|
|
|
- '子订单编号' => $paramArray[0],
|
|
|
- '尺码' => $paramArray[3],
|
|
|
- '数量' => $paramArray[4],
|
|
|
- 'serial' => $paramArray[6],
|
|
|
- 'sczl_jtbh' => $params['sys_sbID'],
|
|
|
- 'Mod_rq' => null,
|
|
|
- ])
|
|
|
- ->select();
|
|
|
-
|
|
|
// 获取上一个机台是否已上报过
|
|
|
$baogonglist = \db('设备_产量计酬')
|
|
|
->where([
|
|
|
@@ -1289,25 +1352,41 @@ class WorkOrderSpotCheck extends Api{
|
|
|
$this->error('当前扫码小票无效');
|
|
|
}
|
|
|
|
|
|
+ // 获取当前手工机台上报的数据
|
|
|
+ $res = \db('设备_产量计酬')
|
|
|
+ ->where([
|
|
|
+ '子订单编号' => $paramArray[0],
|
|
|
+ '尺码' => $paramArray[3],
|
|
|
+ '数量' => $paramArray[4],
|
|
|
+ 'serial' => $paramArray[6],
|
|
|
+ 'sczl_jtbh' => $params['sys_sbID'],
|
|
|
+ 'mod_rq' => null,
|
|
|
+ ])
|
|
|
+ ->order('UniqId desc')
|
|
|
+ ->find();
|
|
|
if (empty($res)) {
|
|
|
$ci_num = $paramArray[4];
|
|
|
} else {
|
|
|
- // 累加 s_num
|
|
|
- $total_s_num = 0;
|
|
|
- foreach ($res as $item) {
|
|
|
- $total_s_num += $item['s_num'];
|
|
|
- }
|
|
|
- if ($total_s_num >= $paramArray[4]) {
|
|
|
- $ci_num = 0;
|
|
|
- } else {
|
|
|
- $ci_num = $res[0]['ci_num'];
|
|
|
- }
|
|
|
+ $ci_num = $res["ci_num"];
|
|
|
+// // 累加 s_num
|
|
|
+// $total_s_num = 0;
|
|
|
+// foreach ($res as $item) {
|
|
|
+// $total_s_num += $item['s_num'];
|
|
|
+// }
|
|
|
+// if ($total_s_num >= $paramArray[4]) {
|
|
|
+// $ci_num = 0;
|
|
|
+// } else {
|
|
|
+// $ci_num = $res[0]['ci_num'];
|
|
|
+// }
|
|
|
}
|
|
|
|
|
|
// 判断是否已报工并给出提示
|
|
|
- if (!empty($res) && $paramArray[4] == $res[0]['s_num'] || $ci_num === '' || $ci_num === 0) {
|
|
|
- $this->error('已上报,无需再次报工');
|
|
|
- }
|
|
|
+// if (!empty($res) && $paramArray[4] == $res[0]['s_num'] || $ci_num === '' || $ci_num === 0) {
|
|
|
+// $this->error('已上报,无需再次报工');
|
|
|
+// }
|
|
|
+// if (!empty($res) && $res["ci_num"] == 0) {
|
|
|
+// $this->error('已上报,无需再次报工');
|
|
|
+// }
|
|
|
$result = [
|
|
|
'sys_sbID' => $params['sys_sbID'],//设备编号
|
|
|
'ci_num' => $ci_num,//剩余数量
|
|
|
@@ -1362,6 +1441,7 @@ class WorkOrderSpotCheck extends Api{
|
|
|
'订单编号' => $record['订单编号'],
|
|
|
'子订单编号' => $record['子订单编号'],
|
|
|
'上报数量' => $record['s_num'],
|
|
|
+ '剩余数量' => $record['ci_num'],
|
|
|
'次品数量' => $record['数量'] - $record['ci_num'],
|
|
|
'生产款号' => $record['款号'],
|
|
|
'尺码' => $record['尺码'],
|
|
|
@@ -1400,10 +1480,11 @@ class WorkOrderSpotCheck extends Api{
|
|
|
')
|
|
|
->join('工单_印件资料 y', 'c.子订单编号 = y.子订单编号', 'left')
|
|
|
->join('工单_基本资料 j', 'c.订单编号 = j.订单编号', 'left')
|
|
|
- ->where('c.订单编号', $order)
|
|
|
+ ->where('c.订单编号', 'like', '%' . explode('DC',$order)[1] . '%')
|
|
|
->where('c.工序名称', $params['code'])
|
|
|
->where('c.sczl_jtbh', $params['sys_sbID'])
|
|
|
->whereNull('c.mod_rq') // 查询未删除数据
|
|
|
+ ->order('UniqId desc')
|
|
|
->select();
|
|
|
// 初始化返回数据的结构
|
|
|
$reslist = [];
|
|
|
@@ -1467,18 +1548,6 @@ class WorkOrderSpotCheck extends Api{
|
|
|
])
|
|
|
->find();
|
|
|
|
|
|
- // 获取当前手工机台上报的数据
|
|
|
- $res = \db('设备_产量计酬')
|
|
|
- ->where([
|
|
|
- '子订单编号' => $paramArray[0],
|
|
|
- '尺码' => $paramArray[3],
|
|
|
- '数量' => $paramArray[4],
|
|
|
- 'serial' => $paramArray[6],
|
|
|
- 'sczl_jtbh' => $params['sys_sbID'],
|
|
|
- 'Mod_rq' => null,
|
|
|
- ])
|
|
|
- ->select();
|
|
|
-
|
|
|
// 获取上一个机台是否已上报过
|
|
|
$baogonglist = \db('设备_产量计酬')
|
|
|
->where([
|
|
|
@@ -1509,25 +1578,41 @@ class WorkOrderSpotCheck extends Api{
|
|
|
$this->error('当前扫码小票无效');
|
|
|
}
|
|
|
|
|
|
+ // 获取当前手工机台上报的数据
|
|
|
+ $res = \db('设备_产量计酬')
|
|
|
+ ->where([
|
|
|
+ '子订单编号' => $paramArray[0],
|
|
|
+ '尺码' => $paramArray[3],
|
|
|
+ '数量' => $paramArray[4],
|
|
|
+ 'serial' => $paramArray[6],
|
|
|
+ 'sczl_jtbh' => $params['sys_sbID'],
|
|
|
+ 'mod_rq' => null,
|
|
|
+ ])
|
|
|
+ ->order('UniqId desc')
|
|
|
+ ->find();
|
|
|
if (empty($res)) {
|
|
|
$ci_num = $paramArray[4];
|
|
|
} else {
|
|
|
- // 累加 s_num
|
|
|
- $total_s_num = 0;
|
|
|
- foreach ($res as $item) {
|
|
|
- $total_s_num += $item['s_num'];
|
|
|
- }
|
|
|
- if ($total_s_num >= $paramArray[4]) {
|
|
|
- $ci_num = 0;
|
|
|
- } else {
|
|
|
- $ci_num = $res[0]['ci_num'];
|
|
|
- }
|
|
|
+ $ci_num = $res["ci_num"];
|
|
|
+// // 累加 s_num
|
|
|
+// $total_s_num = 0;
|
|
|
+// foreach ($res as $item) {
|
|
|
+// $total_s_num += $item['s_num'];
|
|
|
+// }
|
|
|
+// if ($total_s_num >= $paramArray[4]) {
|
|
|
+// $ci_num = 0;
|
|
|
+// } else {
|
|
|
+// $ci_num = $res[0]['ci_num'];
|
|
|
+// }
|
|
|
}
|
|
|
|
|
|
// 判断是否已报工并给出提示
|
|
|
- if (!empty($res) && $paramArray[4] == $res[0]['s_num'] || $ci_num === '' || $ci_num === 0) {
|
|
|
- $this->error('已上报,无需再次报工');
|
|
|
- }
|
|
|
+// if (!empty($res) && $paramArray[4] == $res[0]['s_num'] || $ci_num === '' || $ci_num === 0) {
|
|
|
+// $this->error('已上报,无需再次报工');
|
|
|
+// }
|
|
|
+// if (!empty($res) && $res["ci_num"] == 0) {
|
|
|
+// $this->error('已上报,无需再次报工');
|
|
|
+// }
|
|
|
$result = [
|
|
|
'sys_sbID' => $params['sys_sbID'],//设备编号
|
|
|
'ci_num' => $ci_num,//剩余数量
|
|
|
@@ -1582,6 +1667,7 @@ class WorkOrderSpotCheck extends Api{
|
|
|
'订单编号' => $record['订单编号'],
|
|
|
'子订单编号' => $record['子订单编号'],
|
|
|
'上报数量' => $record['s_num'],
|
|
|
+ '剩余数量' => $record['ci_num'],
|
|
|
'次品数量' => $record['数量'] - $record['ci_num'],
|
|
|
'生产款号' => $record['款号'],
|
|
|
'尺码' => $record['尺码'],
|
|
|
@@ -1620,10 +1706,11 @@ class WorkOrderSpotCheck extends Api{
|
|
|
')
|
|
|
->join('工单_印件资料 y', 'c.子订单编号 = y.子订单编号', 'left')
|
|
|
->join('工单_基本资料 j', 'c.订单编号 = j.订单编号', 'left')
|
|
|
- ->where('c.订单编号', $order)
|
|
|
+ ->where('c.订单编号', 'like', '%' . explode('DC',$order)[1] . '%')
|
|
|
->where('c.工序名称', $params['code'])
|
|
|
->where('c.sczl_jtbh', $params['sys_sbID'])
|
|
|
->whereNull('c.mod_rq') // 查询未删除数据
|
|
|
+ ->order('UniqId desc')
|
|
|
->select();
|
|
|
// 初始化返回数据的结构
|
|
|
$reslist = [];
|
|
|
@@ -2091,6 +2178,9 @@ class WorkOrderSpotCheck extends Api{
|
|
|
$list_order_id = \db('设备_产量计酬')
|
|
|
->field('子订单编号, MAX(serial) as serial')
|
|
|
->where('子订单编号', $params['order_id'])
|
|
|
+ ->where(function($query) {
|
|
|
+ $query->whereNull('mod_rq')->whereOr('mod_rq', '');
|
|
|
+ }) // 查询未删除数据
|
|
|
->group('子订单编号')
|
|
|
->find();
|
|
|
|