增加审批签名
This commit is contained in:
@@ -129,6 +129,11 @@ class ApprovalFlowService
|
||||
'updated_at' => $now,
|
||||
]);
|
||||
|
||||
// 异步生成pdf文件 9.11 add
|
||||
if ($action === 'approve') {
|
||||
\Webman\RedisQueue\Redis::send('stock-order-pdf', ['id'=>$instance->biz_id]);
|
||||
}
|
||||
|
||||
// 2) 聚合本步结论(any / all)
|
||||
$typeRaw = strtolower($step['type'] ?? 'all');
|
||||
$type = in_array($typeRaw, ['any','all']) ? $typeRaw : 'all';
|
||||
|
||||
@@ -275,8 +275,8 @@
|
||||
|
||||
<div style="height: 14mm; line-height: 14mm;">
|
||||
<span>备发货负责人签字:</span>
|
||||
<?php if (!empty($data['sign_img_url'])): ?>
|
||||
<img src="<?php echo htmlspecialchars($data['sign_img_url']); ?>" style="height: 12mm; vertical-align: middle;">
|
||||
<?php if (!empty($data['sign_imgs'][1])): ?>
|
||||
<img src="<?php echo htmlspecialchars($data['sign_imgs'][1]); ?>" style="height: 12mm; vertical-align: middle;">
|
||||
<?php else: ?>
|
||||
<span style="display:inline-block; width:21mm; height:12mm; vertical-align: middle; border-bottom:0.2mm solid #000;"></span>
|
||||
<?php endif; ?>
|
||||
@@ -287,8 +287,8 @@
|
||||
<div style="width: 50%; float: right; text-align: left;">
|
||||
<div style="height: 14mm; line-height: 14mm; margin-bottom: 5mm;">
|
||||
<span>组长签字:</span>
|
||||
<?php if (!empty($data['sign_img_url'])): ?>
|
||||
<img src="<?php echo htmlspecialchars($data['sign_img_url']); ?>" style="height: 12mm; vertical-align: middle;">
|
||||
<?php if (!empty($data['sign_imgs'][0])): ?>
|
||||
<img src="<?php echo htmlspecialchars($data['sign_imgs'][0]); ?>" style="height: 12mm; vertical-align: middle;">
|
||||
<?php else: ?>
|
||||
<span style="display:inline-block; width:21mm; height:12mm; vertical-align: middle; border-bottom:0.2mm solid #000;"></span>
|
||||
<?php endif; ?>
|
||||
|
||||
@@ -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());
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
/**
|
||||
* 启动审批
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user