This commit is contained in:
mkm 2023-08-31 17:40:17 +08:00
parent 445f715559
commit c4beb5d385
2 changed files with 68 additions and 54 deletions

View File

@ -25,7 +25,7 @@ class CompanyController extends BaseApiController
[$page, $limit] = $this->getPage();
$myCompany = Company::findOrEmpty($this->userInfo['company_id'])->toArray();
$companyIds = Contract::where('party_a', $myCompany['id'])->column('party_b');
$query = Company::whereIn('id', $companyIds)->where('status', 1)->append(['province_name', 'city_name', 'area_name', 'street_name', 'village_name','brigade_name','area_manager_name']);
$query = Company::whereIn('id', $companyIds)->where('status', 1)->append(['province_name', 'city_name', 'area_name', 'street_name', 'village_name', 'brigade_name', 'area_manager_name']);
$count = $query->count();
$companies = $query->page($page)->limit($limit)->select()->each(function ($company) {
$company['other_contacts'] = json_decode($company['other_contacts'], true);
@ -41,7 +41,7 @@ class CompanyController extends BaseApiController
public function unsigned()
{
$myCompany = Company::findOrEmpty($this->userInfo['company_id'])->toArray();
$query = Company::where(['street' => $myCompany['street'], 'company_type' => [17, 18], 'is_contract' => 0])->where('id','<>',$this->userInfo['company_id']);
$query = Company::where(['street' => $myCompany['street'], 'company_type' => [17, 18], 'is_contract' => 0])->where('id', '<>', $this->userInfo['company_id']);
$count = $query->count();
$companies = $query->field('*,street street_name,area area_name,city city_name,province province_name,village village_name,brigade brigade_name')->select()->toArray();
return $this->success('', ['count' => $count, 'data' => $companies]);
@ -58,13 +58,13 @@ class CompanyController extends BaseApiController
if (!$query) {
return $this->fail('公司不存在');
}
$company = $query->append(['province_name', 'city_name', 'area_name', 'street_name', 'area_manager_name','village_name','brigade_name'])->toArray();
$company = $query->append(['province_name', 'city_name', 'area_name', 'street_name', 'area_manager_name', 'village_name', 'brigade_name'])->toArray();
$company['other_contacts'] = json_decode($company['other_contacts'], true);
$company['qualification'] = $company['qualification'] != null ? json_decode($company['qualification'], true) : '';
if($company['qualification'] && isset($company['qualification']['other_qualifications'])){
$company['qualification']['other_qualifications']=json_decode($company['qualification']['other_qualifications'],true);
if ($company['qualification'] && isset($company['qualification']['other_qualifications'])) {
$company['qualification']['other_qualifications'] = json_decode($company['qualification']['other_qualifications'], true);
}
$contract = Contract::where('party_b',$id)->find();
$contract = Contract::where('party_b', $id)->find();
if (!empty($contract)) {
if ($contract['type'] == 2) {
$contract['party_b_name'] = User::where('id', $contract['party_b'])->value('nickname');
@ -114,7 +114,7 @@ class CompanyController extends BaseApiController
$count = $query->count();
$users = $query->order('id', 'desc')->page($page)->limit($limit)->with(['company' => function ($query) {
$query->field('id,company_name');
}])->append(['province_name', 'city_name', 'area_name', 'street_name','village_name','brigade_name'])
}])->append(['province_name', 'city_name', 'area_name', 'street_name', 'village_name', 'brigade_name'])
->field('id,avatar,real_name,account,mobile as phone,province,city,area,street,village,brigade,company_id,create_time,qualification,nickname,is_contract,is_captain')
->select()->each(function ($item, $key) {
if ($item['qualification'] != '') {
@ -122,12 +122,12 @@ class CompanyController extends BaseApiController
}
if ($item['is_captain'] == 1) {
$item['informationg_count'] = UserInformationg::where(['create_user_id' => $item['id'], 'status' => 1])->count();
$item['informationg_update_count'] = UserInformationg::where(['create_user_id' => $item['id'], 'status' => 1,'is_update'=>1])->count();
$time=UserInformationgDemand::order('update_time','desc')->value('update_time');
if($time){
$item['informationg_update_time']=date('Y-m-d H:i:s', $time);
}else{
$item['informationg_update_time']='';
$item['informationg_update_count'] = UserInformationg::where(['create_user_id' => $item['id'], 'status' => 1, 'is_update' => 1])->count();
$time = UserInformationgDemand::order('update_time', 'desc')->value('update_time');
if ($time) {
$item['informationg_update_time'] = date('Y-m-d H:i:s', $time);
} else {
$item['informationg_update_time'] = '';
}
}
});
@ -140,8 +140,8 @@ class CompanyController extends BaseApiController
$user = $query->with(['company' => function ($query) {
$query->field('id,company_name');
}])->field('id,sex,avatar,nickname name,account,mobile phone,id_card,qualification,province,province province_name,city,city city_name,area,area area_name,street,street street_name,village,village village_name,brigade,brigade brigade_name, is_contract,company_id,is_captain')->find()->toArray();
$contract = Contract::where("type",2)->where('party_b',$id)->append(['contract_type_name'])->find();
$contract = Contract::where("type", 2)->where('party_b', $id)->append(['contract_type_name'])->find();
$user['contract'] = $contract;
// $roleIds = AdminRole::where('admin_id', $user['id'])->column('role_id');
// $user['roles'] = SystemRole::whereIn('id', $roleIds)->column('name');
@ -168,7 +168,7 @@ class CompanyController extends BaseApiController
public function Draftingcontracts()
{
$params = $this->request->param();
$result = ContractLogic::Draftingcontracts($params,1);
$result = ContractLogic::Draftingcontracts($params, 1);
if ($result == true) {
return $this->success('生成合同成功');
}
@ -179,8 +179,8 @@ class CompanyController extends BaseApiController
public function postsms()
{
$params = $this->request->param();
$id=Contract::where('party_b', $params['id'])->value('id');
$res = ContractLogic::postsms(['id'=>$id]);
$id = Contract::where('party_b', $params['id'])->value('id');
$res = ContractLogic::postsms(['id' => $id]);
if ($res == true) {
return $this->success('发送成功', [], 1, 1);
} else {
@ -191,39 +191,62 @@ class CompanyController extends BaseApiController
/**
* 股金管理
*/
public function shareholder_info(){
public function shareholder_info()
{
// $params = $this->request->param();
$find=Company::where('id',$this->userInfo['company_id'])->field('shareholder_money,village')->find()->toArray();
$find['is_contract']=0;
$find['check_status']=0;
if($find){
$contract=Contract::where('party_b',$this->userInfo['company_id'])->where('contract_type',40)->field('contract_url,create_time,check_status,status')->find();
if($contract){
$find['contract_url']='https://worker-task.lihaink.cn'.$contract['contract_url'];
$find['contract_time']=$contract['create_time'];
$find['check_status']=$contract['check_status'];
if($contract['status']==1){
$find['is_contract']=1;
$find = Company::where('id', $this->userInfo['company_id'])->field('shareholder_money,village')->find()->toArray();
$find['is_contract'] = 0;
$find['check_status'] = 0;
if ($find) {
$contract = Contract::where('party_b', $this->userInfo['company_id'])->where('contract_type', 40)->field('contract_url,create_time,check_status,status')->find();
if ($contract) {
$find['contract_url'] = 'https://worker-task.lihaink.cn' . $contract['contract_url'];
$find['contract_time'] = $contract['create_time'];
$find['check_status'] = $contract['check_status'];
if ($contract['status'] == 1) {
$find['is_contract'] = 1;
}
}
$village_info=Company::where('village',$find['village'])->where('company_type',17)->find();
if($village_info){
$find['is_amount_turned']=1;
}else{
$find['is_amount_turned']=0;
$village_info = Company::where('village', $find['village'])->where('company_type', 17)->find();
if ($village_info) {
$find['is_amount_turned'] = 1;
} else {
$find['is_amount_turned'] = 0;
}
}else{
$find['contract_url']='';
$find['contract_time']='';
$find['is_amount_turned']=0;
} else {
$find['contract_url'] = '';
$find['contract_time'] = '';
$find['is_amount_turned'] = 0;
}
return $this->success('ok',$find);
return $this->success('ok', $find);
}
public function pay_share_capital(){
//**发起股金合同 */
public function initiate_shareholder_contract()
{
$params = $this->request->param();
$params['party_b'] = $this->userInfo['company_id'];
if(!$params['party_b']){
return $this->fail('请先绑定公司');
}
$Company = Company::where('id', $this->userInfo['company_id'])->field('shareholder_money,village')->find();
if($Company){
$params['party_a'] = Company::where('village', $Company['village'])->where('company_type', 17)->value('id');
}
if(!isset($params['party_a'])||$params['party_a']==0){
return $this->fail('甲方公司不存在');
}
$area_manager = Company::where('id', $params['party_b'])->value('area_manager');
$params['area_manager'] = $area_manager;
$params['type'] = 1;
$result = ContractLogic::initiate_contract($params);
if ($result == true) {
return $this->success('发起成功,等待平台风控部上传合同');
}
return $this->fail(ContractLogic::getError());
}
public function pay_share_capital()
{
// return
}
}

View File

@ -183,7 +183,7 @@ class ContractLogic extends BaseLogic
//生成合同
public static function Initiate_contract($data)
{
$model = Contract::where(['party_b' => $data['party_b']])->find();
$model = Contract::where(['party_b' => $data['party_b'],'contract_type'=>$data['contract_type']])->find();
if (empty($model)) {
$model = new Contract();
$model->contract_no = time();
@ -205,15 +205,6 @@ class ContractLogic extends BaseLogic
$model->update_time = time();
$model->setAttrs($data);
$res = $model->save($data);
//如果是租赁合同,调用接口通知物流系统
// if($data['contract_type'] == 29){
// curl_post('http://logistics.lihaink.cn/api/setContract',[],[
// 'party_a' => $data['party_a'],
// 'party_b' => $data['party_b'],
// 'num' => $data['num'],
// 'rent_type' => 1
// ]);
// }
if($res){
return ['code'=>1,'msg'=>'发起成功,等待平台风控部上传合同','data'=>['id'=>$model->id]];
}else{