组长签字:
-
-
; ?>)
+
+
diff --git a/app/controller/IndexController.php b/app/controller/IndexController.php
index b755f5b..9779886 100644
--- a/app/controller/IndexController.php
+++ b/app/controller/IndexController.php
@@ -129,9 +129,11 @@ class IndexController
// var_dump($res);
$param = $request->all();
try {
- $service = new \app\crm\service\StockOrdersService();
- $result = $service->createdPdfFile($param['id']);
- return json($result);
+ // $service = new \app\crm\service\StockOrdersService();
+ // $result = $service->createdPdfFile($param['id']);
+ // return json($result);
+
+ \Webman\RedisQueue\Redis::send('stock-order-pdf', ['id'=>82]);
} catch (\Throwable $th) {
//throw $th;
var_dump($th->getMessage().$th->getLine().$th->getFile());
diff --git a/app/crm/controller/StockOrdersController.php b/app/crm/controller/StockOrdersController.php
index 8efa6be..b4d2034 100644
--- a/app/crm/controller/StockOrdersController.php
+++ b/app/crm/controller/StockOrdersController.php
@@ -56,10 +56,10 @@ class StockOrdersController extends BaseController
if (isset($data['created_at'])) $data['created_at'] = date('Y-m-d H:i:s', $data['created_at']);
if (isset($data['updated_at'])) $data['updated_at'] = date('Y-m-d H:i:s', $data['updated_at']);
if (isset($data['eta_ship_date'])) $data['eta_ship_date'] = date('Y-m-d', $data['eta_ship_date']);
- if (isset($data['biz_date'])) $data['biz_date'] = date('Y-m-d', $data['biz_date']);
- if (isset($data['latest_arrival_date'])) $data['latest_arrival_date'] = date('Y-m-d', $data['latest_arrival_date']);
- if (isset($data['pick_up_date'])) $data['pick_up_date'] = date('Y-m-d', $data['pick_up_date']);
- if (isset($data['collect_all_date'])) $data['collect_all_date'] = date('Y-m-d', $data['collect_all_date']);
+ if (isset($data['biz_date']) && $data['biz_date'] > 0) $data['biz_date'] = date('Y-m-d', $data['biz_date']);
+ if (isset($data['latest_arrival_date']) && $data['latest_arrival_date'] > 0) $data['latest_arrival_date'] = date('Y-m-d', $data['latest_arrival_date']);
+ if (isset($data['pick_up_date']) && $data['pick_up_date'] > 0) $data['pick_up_date'] = date('Y-m-d', $data['pick_up_date']);
+ if (isset($data['collect_all_date']) && $data['collect_all_date'] > 0) $data['collect_all_date'] = date('Y-m-d', $data['collect_all_date']);
if (!empty($data['contract'])) {
$data['contract_url'] = (new \app\common\service\OssService)->generatePrivateUrl($data['contract']);
@@ -151,14 +151,20 @@ class StockOrdersController extends BaseController
{
try {
$raw = $this->service->serviceDetail($request);
- $data = $this->transformData($raw, method_exists($this, 'printFormat')
- ? [$this, 'printFormat']
+ $data = $this->transformData($raw, method_exists($this, 'detailFormat')
+ ? [$this, 'detailFormat']
: null);
return $this->success($data);
} catch (\Throwable $e) {
return $this->error($e->getMessage());
}
}
+
+ protected function detailFormat($data)
+ {
+ // if (!isset($data['profit_total'])) $data['profit_total'] = 0.00;
+ return $data;
+ }
/**
* 启动审批
diff --git a/app/crm/service/StockOrdersService.php b/app/crm/service/StockOrdersService.php
index b29213f..ed08fef 100644
--- a/app/crm/service/StockOrdersService.php
+++ b/app/crm/service/StockOrdersService.php
@@ -14,6 +14,8 @@ use app\common\model\User;
use support\exception\BusinessException;
use support\Db;
use support\Model;
+use app\admin\model\ApprovalInstances;
+use app\admin\model\ApprovalRecords;
class StockOrdersService
{
@@ -225,8 +227,8 @@ class StockOrdersService
$data['approval_status'] = $data['approval_status'] == 1 ? 1 : 0;
// if ($data['is_final'] == 1) {
- $data['pick_up_date'] = strtotime($data['pick_up_date']);
- $data['collect_all_date'] = strtotime($data['collect_all_date']);
+ $data['pick_up_date'] = $data['pick_up_date'] ? strtotime($data['pick_up_date']) : 0;
+ $data['collect_all_date'] = $data['collect_all_date'] ? strtotime($data['collect_all_date']) : 0;
// }
return $data;
}
@@ -577,7 +579,7 @@ class StockOrdersService
$vehList[$v->unique_id] = $vehListItem + $mv;
}
-// var_dump($item->moneyValues);
+
$mvs = [];
foreach ($item->moneyValues as $moneys) {
$mvs[$moneys->field] = [
@@ -588,7 +590,7 @@ class StockOrdersService
// 'currency_info' => SysCurrency::where('currency_code', $money->currency)->value('currency_symbol'),
];
}
- // var_dump($mvs);
+
$accList = [];
foreach ($item->accounts as $k => $v) {
$accList[] = [
@@ -642,13 +644,40 @@ class StockOrdersService
// 'cif_total_amount' => $cifTotalAmount,
// 'cif_total_amount_symbol' => $cifTotalAmountSymbol,
// 'profit' => number_format($totalProfit, 2, '.', ''),
- 'currency_symbol' => $item->settlement_currency // 假设利润使用相同货币
+ 'currency_symbol' => $item->settlement_currency,
+ 'sign_imgs' => $this->queryAppro($item->id),
+ 'contract_url' => (!empty($item->contract)) ? (new \app\common\service\OssService)->generatePrivateUrl($item->contract) : ''
];
// var_dump($veh);
return $veh;
}
+ public function queryAppro($bizId)
+ {
+ $instances = ApprovalInstances::where('biz_id', $bizId)->where('biz_type', 'stock_orders')->first();
+ if (!$instances) {
+ return [];
+ }
+
+ $records = ApprovalRecords::where('instance_id', $instances->id)->where('action', 'approve')->orderBy('step_index', 'asc')->pluck('approver_id')->toArray();
+ if (count($records) == 0) {
+ return [];
+ }
+
+ $signImg = User::whereIn('id', $records)->pluck('sign_img')->toArray();
+ if (count($signImg) == 0) {
+ return [];
+ }
+
+ $signImgs = [];
+ foreach ($signImg as $k => $v) {
+ $signImgs[$k] = (!empty($v))?(new \app\common\service\OssService)->generatePrivateUrl($v):'';
+ }
+
+ return $signImgs;
+ }
+
/**
* 打印数据
*/
@@ -735,6 +764,9 @@ class StockOrdersService
$data['eta_ship_date'] = strtotime($data['eta_ship_date']);
$data['latest_arrival_date'] = strtotime($data['latest_arrival_date']);
$data['approval_status'] = $data['approval_status'] == 1 ? 1 : 0;
+
+ $data['pick_up_date'] = $data['pick_up_date'] ? strtotime($data['pick_up_date']) : 0;
+ $data['collect_all_date'] = $data['collect_all_date'] ? strtotime($data['collect_all_date']) : 0;
return $data;
}
diff --git a/app/queue/redis/StockOrderPdf.php b/app/queue/redis/StockOrderPdf.php
index 5c75a7e..057a761 100644
--- a/app/queue/redis/StockOrderPdf.php
+++ b/app/queue/redis/StockOrderPdf.php
@@ -18,7 +18,7 @@ class StockOrderPdf implements Consumer
{
try {
- $service = new \app\common\service\StockOrdersService();
+ $service = new \app\crm\service\StockOrdersService();
$service->createdPdfFile($data['id']);
return true;