|
|
@@ -2,6 +2,7 @@
|
|
|
|
|
|
namespace App\Service;
|
|
|
|
|
|
+use App\Jobs\ProcessDataJob;
|
|
|
use App\Model\DDEmployee;
|
|
|
use App\Model\Field;
|
|
|
use App\Model\FieldData;
|
|
|
@@ -956,6 +957,7 @@ class U8XkyServerService extends Service
|
|
|
$data['data'][$key]['crt_name'] = $e_map[$value['crt_id']] ?? "";
|
|
|
$data['data'][$key]['crt_time'] = $value['crt_time'] ? date('Y-m-d H:i:s',$value['crt_time']) : '';
|
|
|
$data['data'][$key]['state_title'] = U8State::state_name[$value['state']];
|
|
|
+ $this->fillStateDetail($data['data'][$key]);
|
|
|
}
|
|
|
|
|
|
return $data;
|
|
|
@@ -1325,6 +1327,7 @@ class U8XkyServerService extends Service
|
|
|
$data['data'][$key]['crt_name'] = $e_map[$value['crt_id']] ?? "";
|
|
|
$data['data'][$key]['crt_time'] = $value['crt_time'] ? date('Y-m-d H:i:s',$value['crt_time']) : '';
|
|
|
$data['data'][$key]['state_title'] = U8State::state_name[$value['state']];
|
|
|
+ $this->fillStateDetail($data['data'][$key]);
|
|
|
}
|
|
|
|
|
|
return $data;
|
|
|
@@ -1702,6 +1705,7 @@ class U8XkyServerService extends Service
|
|
|
$data['data'][$key]['crt_time'] = $value['crt_time'] ? date('Y-m-d H:i:s', $value['crt_time']) : '';
|
|
|
$data['data'][$key]['state_title'] = U8State::state_name[$value['state']] ?? '';
|
|
|
$data['data'][$key]['bredvouch_title'] = RdRecord01::$bredvouch_title[$value['bredvouch']] ?? '';
|
|
|
+ $this->fillStateDetail($data['data'][$key]);
|
|
|
}
|
|
|
|
|
|
return $data;
|
|
|
@@ -1760,4 +1764,53 @@ class U8XkyServerService extends Service
|
|
|
|
|
|
return [true, ''];
|
|
|
}
|
|
|
+
|
|
|
+ public function fillStateDetail(&$value){
|
|
|
+ $is_submit_again = 0;
|
|
|
+ if($value['state'] == U8State::state_one && $value['result'] != ''){
|
|
|
+ $is_submit_again = 1;
|
|
|
+ }
|
|
|
+ $value['is_submit_again'] = $is_submit_again;
|
|
|
+ }
|
|
|
+
|
|
|
+ public function submitAgain($data, $user){
|
|
|
+ if(empty($data['order_number'])) return [false, '流水号不能为空'];
|
|
|
+ //1 采购单 2 采购请购单 3 采购入库单
|
|
|
+ if(empty($data['type'])) return [false, 'type不能为空'];
|
|
|
+ if(! isset(Record::type_for_model[$data['type']])) return [false, 'type不存在'];
|
|
|
+ $model = Record::type_for_model[$data['type']];
|
|
|
+ $array = $model::where('login_type', $user['login_type'])
|
|
|
+ ->where('order_number', $data['order_number'])
|
|
|
+ ->where('del_time',0)
|
|
|
+ ->first();
|
|
|
+ if(empty($array)) return [false, '操作的来源单据不存在或已被删除'];
|
|
|
+ $model_array = $array->toArray();
|
|
|
+
|
|
|
+ //限制操作------------------------------------
|
|
|
+ list($status,$msg) = $this->limitingSendRequestBackgExpire($model_array['order_number'].$data['type'].$model_array['login_type']);
|
|
|
+ if(! $status) return [false,$msg];
|
|
|
+
|
|
|
+ $state = U8State::where('type', $data['type'])
|
|
|
+ ->where('del_time', 0)
|
|
|
+ ->where('order_number', $model_array['order_number'])
|
|
|
+ ->where('login_type', $model_array['login_type'])
|
|
|
+ ->first();
|
|
|
+ if(empty($state)) return [false,'操作来源单据暂未审批'];
|
|
|
+ $state_array = $state->toArray();
|
|
|
+ if($state_array['state'] != U8State::state_one || empty($state_array['result']) || $state_array['is_submit']) return [false, '操作的来源单据不允许提交'];
|
|
|
+
|
|
|
+ $record = Record::where("del_time",2)
|
|
|
+ ->where('login_type', $model_array['login_type'])
|
|
|
+ ->where('order_number', $model_array['order_number'])
|
|
|
+ ->where('type', $data['type'])
|
|
|
+ ->where('msg', '<>', '')
|
|
|
+ ->orderBy('id', 'desc')
|
|
|
+ ->first();
|
|
|
+ if(empty($record)) return [false, '提交记录数据不存在'];
|
|
|
+ $record_array = $record->toArray();
|
|
|
+
|
|
|
+ ProcessDataJob::dispatch($record_array)->onQueue(Record::$job);
|
|
|
+
|
|
|
+ return [true, '已进入队列后台,正在重新传输入用友服务器'];
|
|
|
+ }
|
|
|
}
|