|
@@ -4,7 +4,7 @@
|
|
|
namespace app\user\controller;
|
|
|
|
|
|
use app\user\model\CompanyType;use app\user\model\Headquarters;
|
|
|
-use app\user\model\SupplierContact;
|
|
|
+use app\user\model\SupplierBank;use app\user\model\SupplierContact;
|
|
|
use think\App;
|
|
|
use think\facade\Validate;
|
|
|
class Supplier extends Base{
|
|
@@ -286,6 +286,7 @@ class Supplier extends Base{
|
|
|
$info->addr=$param['addr'];
|
|
|
$info->scope=$param['scope'];
|
|
|
$info->status=$param['registercode']==$param['invoice_code']?1:0;
|
|
|
+ $info->remark .= $param['registercode']==$param['invoice_code']?"":"企业纳税识别号与营业执照不匹配";
|
|
|
$this->model->startTrans();
|
|
|
|
|
|
try{
|
|
@@ -449,4 +450,147 @@ class Supplier extends Base{
|
|
|
];
|
|
|
return success("获取成功",$data);
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 银行信息添加
|
|
|
+ * @param code|供应商编码
|
|
|
+ * @param bank_name|银行名称
|
|
|
+ * @param contact_name|联系人
|
|
|
+ * @param contact_mobile|联系电话
|
|
|
+ * @param bank_no|银行卡号
|
|
|
+ * @return \think\Response|\think\response\Json|void
|
|
|
+ * @throws \think\db\exception\DbException
|
|
|
+ */
|
|
|
+ public function bankCreate()
|
|
|
+ {
|
|
|
+ $post = $this->request->only(['code', 'bank_name', 'bank_no', 'contact_name', 'contact_mobile'], 'post', 'trim');
|
|
|
+ $val = Validate::rule([
|
|
|
+ 'code|供应商编码' => 'require',
|
|
|
+ 'bank_name|银行名称' => 'require|max:255',
|
|
|
+ 'bank_no|银行卡号' => 'require|number|unique:\app\user\model\supplier_bank,bank_no',
|
|
|
+ 'contact_name|联系人' => 'max:255',
|
|
|
+ 'contact_mobile|联系电话' => 'mobile',
|
|
|
+ ]);
|
|
|
+ if ($val->check($post) == false) return error($val->getError());
|
|
|
+ $supplier = $this->model->where([['code',"=", $post['code']],["is_del","=",0]])->findOrEmpty();
|
|
|
+ if ($supplier->isEmpty()) return error("供应商不存在");
|
|
|
+ $data=[
|
|
|
+ 'code'=>$post['code'],
|
|
|
+ 'bank_name'=>$post['bank_name'],
|
|
|
+ 'bank_no'=>$post['bank_no'],
|
|
|
+ 'contact_name'=>$post['contact_name'],
|
|
|
+ 'contact_mobile'=>$post['contact_mobile'],
|
|
|
+ 'apply_name'=>$this->uname,
|
|
|
+ 'apply_id'=>$this->uid,
|
|
|
+ "status"=>0,
|
|
|
+ "is_default"=>SupplierBank::where(["code"=>$post['code']])->count()==0?1:0,
|
|
|
+ ];
|
|
|
+ SupplierBank::create($data);
|
|
|
+ return success("添加成功");
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 银行信息删除
|
|
|
+ * @param id|供应商银行id
|
|
|
+ * @return \think\Response|\think\response\Json|void
|
|
|
+ */
|
|
|
+ public function bankDelete()
|
|
|
+ {
|
|
|
+ $post = $this->request->only(['id'], 'post', 'trim');
|
|
|
+ $val = Validate::rule([
|
|
|
+ 'id|供应商银行id' => 'require',
|
|
|
+ ]);
|
|
|
+ if ($val->check($post) == false) return error($val->getError());
|
|
|
+ $bank = SupplierBank::where([['id',"=", $post['id']]])->findOrEmpty();
|
|
|
+ if ($bank->isEmpty()) return error("供应商银行不存在");
|
|
|
+ if($bank->is_default==1)return error("默认银行不能删除");
|
|
|
+ $bank->delete();
|
|
|
+ return success("删除成功");
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * @param id|供应商银行id
|
|
|
+ *@param bank_name|银行名称
|
|
|
+ *@param contact_name|联系人
|
|
|
+ *@param contact_mobile|联系电话
|
|
|
+ *@return \think\Response|\think\response\Json|void
|
|
|
+ **/
|
|
|
+ public function bankUpdate()
|
|
|
+ {
|
|
|
+ $post = $this->request->only(['id', 'bank_name', 'bank_no', 'contact_name', 'contact_mobile'], 'post', 'trim');
|
|
|
+ $val = Validate::rule([
|
|
|
+ 'id|供应商银行id' => 'require',
|
|
|
+ 'bank_name|银行名称' => 'require|max:255',
|
|
|
+ 'bank_no|银行卡号' => 'require|number|unique:\app\user\model\supplier_bank,bank_no',
|
|
|
+ 'contact_name|联系人' => 'max:255',
|
|
|
+ 'contact_mobile|联系电话' => 'mobile',
|
|
|
+ ]);
|
|
|
+ if ($val->check($post) == false) return error($val->getError());
|
|
|
+ $bank = SupplierBank::where([['id',"=", $post['id']]])->findOrEmpty();
|
|
|
+ if ($bank->isEmpty()) return error("供应商银行不存在");
|
|
|
+ $bank->bank_name=$post['bank_name'];
|
|
|
+ $bank->bank_no=$post['bank_no'];
|
|
|
+ $bank->contact_name=$post['contact_name'];
|
|
|
+ $bank->contact_mobile=$post['contact_mobile'];
|
|
|
+ $bank->save();
|
|
|
+ return success("修改成功");
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * @param id|供应商银行id
|
|
|
+ * @return \think\Response|\think\response\Json|void
|
|
|
+ * @throws \think\db\exception\DbException
|
|
|
+ */
|
|
|
+ public function bankDefault()
|
|
|
+ {
|
|
|
+ $post = $this->request->only(['id'], 'post', 'trim');
|
|
|
+ $val = Validate::rule([
|
|
|
+ 'id|供应商银行id' => 'require',
|
|
|
+ ]);
|
|
|
+ if ($val->check($post) == false) return error($val->getError());
|
|
|
+ $bank = SupplierBank::where([['id',"=", $post['id']]])->findOrEmpty();
|
|
|
+ if ($bank->isEmpty()) return error("供应商银行不存在");
|
|
|
+ SupplierBank::where(["code"=>$bank->code,"is_default"=>1])->update(["is_default"=>0]);
|
|
|
+ $bank->is_default=1;
|
|
|
+ $bank->save();
|
|
|
+ return success("设置成功");
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 银行信息列表
|
|
|
+ * @param code|供应商编码
|
|
|
+ * @param status|状态
|
|
|
+ * @param contact_name|联系人
|
|
|
+ * @param contact_mobile|联系电话
|
|
|
+ * @param page|页码
|
|
|
+ * @param size|每页数量
|
|
|
+ * @return \think\Response|\think\response\Json|void
|
|
|
+ * @throws \think\db\exception\DbException
|
|
|
+ */
|
|
|
+ public function bankList()
|
|
|
+ {
|
|
|
+ $post = $this->request->only(['code'=>"","status"=>"","contact_name"=>"","contact_mobile"=>"","page"=>1,"size"=>15], 'post', 'trim');
|
|
|
+ $where=[];
|
|
|
+ if($post['code']!="")$where[]=["code","=",$post['code']];
|
|
|
+ if($post['status']!=="")$where[]=["status","=",$post['status']];
|
|
|
+ if($post['contact_name']!="")$where[]=["contact_name","like","%".$post['contact_name']."%"];
|
|
|
+ if($post['contact_mobile']!="")$where[]=["contact_mobile","like","%".$post['contact_mobile']."%"];
|
|
|
+ $data=SupplierBank::with(['supplier'])->where($where)->order('id', 'desc')
|
|
|
+ ->paginate(['list_rows'=>$post['size'],'page'=>$post['page']]);
|
|
|
+ return success("获取成功",["list"=>$data->items(),"total"=>$data->total()]);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * @param id|供应商银行id
|
|
|
+ * @param status|状态
|
|
|
+ * @return \think\Response|\think\response\Json|void
|
|
|
+ */
|
|
|
+ public function bankStatus()
|
|
|
+ {
|
|
|
+ $post = $this->request->only(['id','status'], 'post', 'trim');
|
|
|
+ $val = Validate::rule([
|
|
|
+ 'id|供应商银行id' => 'require',
|
|
|
+ 'status|状态' => 'require|in:0,1',
|
|
|
+ ]);
|
|
|
+ if ($val->check($post) == false) return error($val->getError());
|
|
|
+ $bank = SupplierBank::where([['id',"=", $post['id']]])->findOrEmpty();
|
|
|
+ if ($bank->isEmpty()) return error("供应商银行不存在");
|
|
|
+ $bank->status=$post['status'];
|
|
|
+ $bank->save();
|
|
|
+ return success("修改成功");
|
|
|
+ }
|
|
|
}
|