|
@@ -793,14 +793,36 @@ class Sale extends Base
|
|
|
"action_type" => "create"//新建create,编辑edit,更改状态status
|
|
|
], "CKD", 0, $out);
|
|
|
|
|
|
- ProcessOrder::AddProcess(['id'=>$rm,'nickname'=>$ri], [
|
|
|
- "order_type" => 'CKD',
|
|
|
- "order_code" => $outCode,//出库单号
|
|
|
- "order_id" => $ou,
|
|
|
- "order_status" => $status,
|
|
|
- "before_status" => 0,
|
|
|
- 'holder_id'=>$out['apply_id'],
|
|
|
- ]);
|
|
|
+ //区分是否是库存品订单
|
|
|
+ if($status===1 && $etid['is_stock']==0){
|
|
|
+
|
|
|
+ $supplier = Db::name('supplier')
|
|
|
+ ->field('person,personid')
|
|
|
+ ->where('code',$cgdinfo['supplierNo'])
|
|
|
+ ->findOrEmpty();
|
|
|
+
|
|
|
+ ProcessOrder::AddProcess(['id'=>$rm,'nickname'=>$ri], [
|
|
|
+ "order_type" => 'CKD',
|
|
|
+ "order_code" => $outCode,//出库单号
|
|
|
+ "order_id" => $ou,
|
|
|
+ "order_status" => $status,
|
|
|
+ "before_status" => 0,
|
|
|
+ 'wait_id'=>$supplier['personid'],
|
|
|
+ 'wait_name'=>$supplier['person'],
|
|
|
+ 'holder_id'=>$supplier['personid'],
|
|
|
+ ]);
|
|
|
+ }else{
|
|
|
+ ProcessOrder::AddProcess(['id'=>$rm,'nickname'=>$ri], [
|
|
|
+ "order_type" => 'CKD',
|
|
|
+ "order_code" => $outCode,//出库单号
|
|
|
+ "order_id" => $ou,
|
|
|
+ "order_status" => $status,
|
|
|
+ "before_status" => 0,
|
|
|
+ 'holder_id'=>$out['apply_id'],
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
|
|
|
//处理台账-既然是根据orderCode更新的数据,那么肯定是有数据的,只需要更新就行了
|
|
|
Db::execute("UPDATE `wsm_standing_book` SET `outCode`=CONCAT(IFNULL(`outCode`,''),',{$outCode}'),`updatetime`='" . date('Y-m-d H:i:s') . "' WHERE `orderCode`='{$orderCode}'");
|
|
@@ -2807,12 +2829,12 @@ class Sale extends Base
|
|
|
if ($send_num > $der['wsend_num']) {
|
|
|
return error_show(1002, "超出可发货数量");
|
|
|
}
|
|
|
- $apply_id = GetUserInfo($token);
|
|
|
- if (empty($apply_id) || $apply_id['code'] != 0) {
|
|
|
- return error_show(1002, "申请人数据不存在");
|
|
|
- }
|
|
|
- $rm = isset($apply_id["data"]['id']) ? $apply_id["data"]['id'] : "";
|
|
|
- $ri = isset($apply_id["data"]['nickname']) ? $apply_id["data"]['nickname'] : "";
|
|
|
+// $apply_id = GetUserInfo($token);
|
|
|
+// if (empty($apply_id) || $apply_id['code'] != 0) {
|
|
|
+// return error_show(1002, "申请人数据不存在");
|
|
|
+// }
|
|
|
+ $rm = $this->uid;
|
|
|
+ $ri = $this->uname;
|
|
|
$addrid = isset($this->post['addrid']) && $this->post['addrid'] !== "" ? intval($this->post['addrid']) : "";
|
|
|
$dr = Db::name('order_addr')->where(['id' => $addrid, 'is_del' => 0])->find();
|
|
|
if (empty($dr)) {
|
|
@@ -2851,10 +2873,21 @@ class Sale extends Base
|
|
|
$datainfo = Db::name('order_out')->insert($data, true);
|
|
|
if ($datainfo > 0) {
|
|
|
$stx = ["order_code" => $outCode, "status" => $status, "action_remark" => '', "action_type" => "create"];
|
|
|
- ActionLog::logAdd($this->post['token'], $stx, $der['order_type'] == 1 ? "CKD" : 'ZXCKD', $status, $data);
|
|
|
- $order = ["order_type" => "CKD", "order_code" => $outCode, "order_id" => $datainfo, "order_status" => $data['status'], "before_status" => 0, 'holder_id'=>$data['apply_id']
|
|
|
- ];
|
|
|
- ProcessOrder::AddProcess($this->post['token'], $order);
|
|
|
+ ActionLog::logAdd(['id'=>$rm,'nickname'=>$ri], $stx, $der['order_type'] == 1 ? "CKD" : 'ZXCKD', $status, $data);
|
|
|
+
|
|
|
+ //是否库存品,待办数据推送到的人有区别,
|
|
|
+ //库存品——>推到库管,非库存品——>推送供应商负责人
|
|
|
+ if ($data['status'] == 1 && $der['is_stock'] == 0) {
|
|
|
+ $supplier = Db::name('supplier')
|
|
|
+ ->alias('a')
|
|
|
+ ->field('a.id,a.person,a.personid')
|
|
|
+ ->leftJoin('purchease_order b', 'b.is_del=0 AND b.supplierNo=a.code')
|
|
|
+ ->leftJoin('order_num c', 'c.cgdNo=b.cgdNo')
|
|
|
+ ->where('c.orderCode', $orderCode)
|
|
|
+ ->findOrEmpty();
|
|
|
+ $order = ["order_type" => "CKD", "order_code" => $outCode, "order_id" => $datainfo, "order_status" => $data['status'], "before_status" => 0, 'holder_id' => $data['apply_id'], 'wait_id' => $supplier['personid'] ?? 0, 'wait_name' => $supplier['person'] ?? ''];
|
|
|
+ } else $order = ["order_type" => "CKD", "order_code" => $outCode, "order_id" => $datainfo, "order_status" => $data['status'], "before_status" => 0, 'holder_id' => $data['apply_id']];
|
|
|
+ ProcessOrder::AddProcess(['id'=>$rm,'nickname'=>$ri], $order);
|
|
|
if ($status == 1) {
|
|
|
$item = $der['status'];
|
|
|
$der['send_num'] += $send_num;
|
|
@@ -2869,10 +2902,10 @@ class Sale extends Base
|
|
|
}
|
|
|
$stx = ["order_code" => $orderCode, "status" => $item, "action_remark" => '', "action_type" => "edit"];
|
|
|
|
|
|
- ActionLog::logAdd($this->post['token'], $stx, "XSQRD", $der['status'], $der);
|
|
|
+ ActionLog::logAdd(['id'=>$rm,'nickname'=>$ri], $stx, "XSQRD", $der['status'], $der);
|
|
|
$order = ["order_type" => "XSQRD", "order_code" => $orderCode, "order_id" => $der['id'], "order_status" => $data['status'], "before_status" => 0,'holder_id'=>$der['apply_id']];
|
|
|
|
|
|
- ProcessOrder::AddProcess($this->post['token'], $order);
|
|
|
+ ProcessOrder::AddProcess(['id'=>$rm,'nickname'=>$ri], $order);
|
|
|
}
|
|
|
|
|
|
Db::commit();
|
|
@@ -2918,9 +2951,20 @@ class Sale extends Base
|
|
|
$cust = Db::name('order_out')->save($codeinfo);
|
|
|
if ($cust) {
|
|
|
$stx = ["order_code" => $outCode, "status" => $time, "action_remark" => '', "action_type" => "status"];
|
|
|
- ActionLog::logAdd($this->post['token'], $stx, "CKD", $codeinfo['status'], $codeinfo);
|
|
|
- $order = ["order_type" => "CKD", "order_code" => $outCode, "order_id" => $codeinfo['id'], "order_status" => $codeinfo['status'], "before_status" => 0, 'holder_id'=>$codeinfo['apply_id']];
|
|
|
- ProcessOrder::AddProcess($this->post['token'], $order);
|
|
|
+ ActionLog::logAdd(['id'=>$this->uid,'nickname'=>$this->uname], $stx, "CKD", $codeinfo['status'], $codeinfo);
|
|
|
+
|
|
|
+ if ($status == 1 && $dr['is_stock'] == 0) {
|
|
|
+ $supplier = Db::name('supplier')
|
|
|
+ ->alias('a')
|
|
|
+ ->field('a.id,a.person,a.personid')
|
|
|
+ ->leftJoin('purchease_order b', 'b.is_del=0 AND b.supplierNo=a.code')
|
|
|
+ ->leftJoin('order_num c', 'c.cgdNo=b.cgdNo')
|
|
|
+ ->where('c.orderCode', $codeinfo['orderCode'])
|
|
|
+ ->findOrEmpty();
|
|
|
+ $order = ["order_type" => "CKD", "order_code" => $outCode, "order_id" => $codeinfo['id'], "order_status" => $codeinfo['status'], "before_status" => 0, 'holder_id' => $codeinfo['apply_id'], 'wait_id' => $supplier['personid'] ?? 0, 'wait_name' => $supplier['person'] ?? ''];
|
|
|
+ }else $order = ["order_type" => "CKD", "order_code" => $outCode, "order_id" => $codeinfo['id'], "order_status" => $codeinfo['status'], "before_status" => 0,'holder_id'=>$codeinfo['apply_id']];
|
|
|
+
|
|
|
+ ProcessOrder::AddProcess(['id'=>$this->uid,'nickname'=>$this->uname], $order);
|
|
|
if ($status == 1) {
|
|
|
$stokc = Db::name("good_stock")->where(['spuCode' => $codeinfo['spuCode'], "wsm_code" => $codeinfo['wsm_code'],
|
|
|
"is_del" => 0])->find();
|
|
@@ -2953,14 +2997,14 @@ class Sale extends Base
|
|
|
return error_show(1003, "更新失败");
|
|
|
}
|
|
|
$stx = ["order_code" => $dr['orderCode'], "status" => $item, "action_remark" => '', "action_type" => "edit"];
|
|
|
- ActionLog::logAdd($this->post['token'], $stx, $dr['order_type'] == 2 ? "ZXQRD" : "XSQRD", $dr['status'],$dr);
|
|
|
+ ActionLog::logAdd(['id'=>$this->uid,'nickname'=>$this->uname], $stx, $dr['order_type'] == 2 ? "ZXQRD" : "XSQRD", $dr['status'],$dr);
|
|
|
$order = ["order_type" => "XSQRD", "order_code" => $dr['orderCode'], "order_id" => $dr['id'], "order_status" => $dr['status'], "before_status" => 0, 'holder_id' => $dr['apply_id']];
|
|
|
- ProcessOrder::AddProcess($this->post['token'], $order);
|
|
|
+ ProcessOrder::AddProcess(['id'=>$this->uid,'nickname'=>$this->uname], $order);
|
|
|
|
|
|
//商品变动日志表,good_log_code字段存储销售订单编号
|
|
|
$good_data[] = ['good_log_code' => $outCode, "stock_id" => $stoc['id'], "type" => 1, 'stock' => $codeinfo['send_num'], "stock_name" => "wait_out_stock"];
|
|
|
$good_data[] = ['good_log_code' => $outCode, "stock_id" => $stoc['id'], "type" => 2, 'stock' => $codeinfo['send_num'], "stock_name" => "usable_stock"];
|
|
|
- GoodLog::LogAdd($this->post['token'], $good_data, 'CKD');
|
|
|
+ GoodLog::LogAdd(['id'=>$this->uid,'nickname'=>$this->uname], $good_data, 'CKD');
|
|
|
}
|
|
|
if ($status == 3) {
|
|
|
$var = Db::name('good_stock')->where(['wsm_code' => $codeinfo['wsm_code'], 'good_type_code' => $dr['good_code']])->find();
|
|
@@ -2978,7 +3022,7 @@ class Sale extends Base
|
|
|
|
|
|
//商品变动日志表,good_log_code字段存储销售订单编号
|
|
|
$good_data[] = ['good_log_code' => $outCode, "stock_id" => $var['id'], "type" => 2, 'stock' => $codeinfo['send_num'], "stock_name" => "intra_stock"];
|
|
|
- GoodLog::LogAdd($this->post['token'], $good_data, $codeinfo['order_type'] == 2 ? "ZXCKD" : "CKD");
|
|
|
+ GoodLog::LogAdd(['id'=>$this->uid,'nickname'=>$this->uname], $good_data, $codeinfo['order_type'] == 2 ? "ZXCKD" : "CKD");
|
|
|
if ($stre == false) {
|
|
|
Db::rollback();
|
|
|
return error_show(1002, "状态更新失败");
|
|
@@ -3512,12 +3556,12 @@ class Sale extends Base
|
|
|
if ($addr_code == "") {
|
|
|
return error_show(1002, "参数addr_code不能为空");
|
|
|
}
|
|
|
- $apply_id = GetUserInfo($token);
|
|
|
- if (empty($apply_id) || $apply_id['code'] != 0) {
|
|
|
- return error_show(1002, "申请人数据不存在");
|
|
|
- }
|
|
|
- $rm = isset($apply_id["data"]['id']) ? $apply_id["data"]['id'] : "";
|
|
|
- $ri = isset($apply_id["data"]['nickname']) ? $apply_id["data"]['nickname'] : "";
|
|
|
+// $apply_id = GetUserInfo($token);
|
|
|
+// if (empty($apply_id) || $apply_id['code'] != 0) {
|
|
|
+// return error_show(1002, "申请人数据不存在");
|
|
|
+// }
|
|
|
+ $rm = $this->uid;//isset($apply_id["data"]['id']) ? $apply_id["data"]['id'] : "";
|
|
|
+ $ri = $this->uname;//isset($apply_id["data"]['nickname']) ? $apply_id["data"]['nickname'] : "";
|
|
|
$sendtime = isset($this->post['sendtime']) && $this->post['sendtime'] !== "" ? $this->post['sendtime'] : date("Y-m-d H:i:s");
|
|
|
|
|
|
Db::startTrans();
|
|
@@ -3647,14 +3691,35 @@ class Sale extends Base
|
|
|
"action_type" => "create"//新建create,编辑edit,更改状态status
|
|
|
], "CKD", $data['status'], $data);
|
|
|
|
|
|
- ProcessOrder::AddProcess(['id'=>$rm,'nickname'=>$ri], [
|
|
|
- "order_type" => 'CKD',
|
|
|
- "order_code" => $data['outCode'],//出库单号
|
|
|
- "order_id" => $datainfo,
|
|
|
- "order_status" => $data['status'],
|
|
|
- "before_status" => 0,
|
|
|
- 'holder_id'=>$data['apply_id']
|
|
|
- ]);
|
|
|
+ //是否库存品,待办数据推送到的人有区别,
|
|
|
+ //库存品——>推到库管,非库存品——>推送供应商负责人
|
|
|
+ if ($data['status'] == 1 && $der['is_stock'] == 0) {
|
|
|
+
|
|
|
+ $supplier = Db::name('supplier')
|
|
|
+ ->field('person,personid')
|
|
|
+ ->where('code', $cgd['supplierNo'])
|
|
|
+ ->findOrEmpty();
|
|
|
+
|
|
|
+ ProcessOrder::AddProcess(['id' => $rm, 'nickname' => $ri], [
|
|
|
+ "order_type" => 'CKD',
|
|
|
+ "order_code" => $data['outCode'],//出库单号
|
|
|
+ "order_id" => $datainfo,
|
|
|
+ "order_status" => $data['status'],
|
|
|
+ "before_status" => 0,
|
|
|
+ 'holder_id' => $data['apply_id'],
|
|
|
+ 'wait_id' => $supplier['personid'],
|
|
|
+ 'wait_name' => $supplier['person'],
|
|
|
+ ]);
|
|
|
+ } else {
|
|
|
+ ProcessOrder::AddProcess(['id' => $rm, 'nickname' => $ri], [
|
|
|
+ "order_type" => 'CKD',
|
|
|
+ "order_code" => $data['outCode'],//出库单号
|
|
|
+ "order_id" => $datainfo,
|
|
|
+ "order_status" => $data['status'],
|
|
|
+ "before_status" => 0,
|
|
|
+ 'holder_id' => $data['apply_id']
|
|
|
+ ]);
|
|
|
+ }
|
|
|
|
|
|
//维护台账记录
|
|
|
Db::name('standing_book')
|