|
@@ -1140,6 +1140,404 @@ class Agreement
|
|
|
|
|
|
$pdf->out($name);
|
|
|
}
|
|
|
+
|
|
|
+ public function content_3($agreement, $info, $data = false)
|
|
|
+ {
|
|
|
+ if ($data) {
|
|
|
+ list($role, $name, $oname, $sdate, $edate, $qdate) = $data;
|
|
|
+ } else {
|
|
|
+ $role = Dever::db('setting/role')->find($info['role']);
|
|
|
+ $name = $this->name($agreement, $info, $role);
|
|
|
+
|
|
|
+ $oagreement = Dever::db('setting/agreement')->find(1);
|
|
|
+ $oname = $this->name($oagreement, $info, $role);
|
|
|
+
|
|
|
+ if (isset($info['sdate']) && $info['sdate']) {
|
|
|
+ $sdate = date('Y年m月d日', $info['sdate']);
|
|
|
+ $edate = date('Y年m月d日', $info['edate']);
|
|
|
+ $qdate = date('Y年m月d日', $info['qdate']);
|
|
|
+ } else {
|
|
|
+ $sdate = date('Y年m月d日');
|
|
|
+ $edate = date('Y年m月d日', strtotime('+3 year'));
|
|
|
+ $qdate = $sdate;
|
|
|
+
|
|
|
+ $old = Dever::db('agent/member_agreement')->getOld(array('mid' => $info['mid'], 'agreement_id' => 1));
|
|
|
+ if ($old) {
|
|
|
+ $sdate = date('Y年m月d日', $old['sdate']);
|
|
|
+ $edate = date('Y年m月d日', $old['edate']);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ $content = array();
|
|
|
+
|
|
|
+
|
|
|
+ $type = 1;
|
|
|
+
|
|
|
+
|
|
|
+ if ($type == 1) {
|
|
|
+ $name = '城市代理版';
|
|
|
+ $year = 6;
|
|
|
+ $cash = '3.1合同金额:按定制收费,合计总金额['.$info['agent_cash'].']元,其中总金额的90%为软件服务费,总金额的10%为购买开店所需电器及菜品费用。';
|
|
|
+ }
|
|
|
+
|
|
|
+ elseif ($type == 2) {
|
|
|
+ $name = '定制版';
|
|
|
+ $year = 6;
|
|
|
+ $cash = '3.1合同金额:按定制收费,合计总金额['.$info['agent_cash'].']元。';
|
|
|
+ }
|
|
|
+
|
|
|
+ elseif ($type == 1) {
|
|
|
+ $name = '升级版';
|
|
|
+ $year = 6;
|
|
|
+ $cash = '3.1合同金额:5000元/每年,合计总金额['.$info['agent_cash'].']元。';
|
|
|
+ }
|
|
|
+
|
|
|
+ else {
|
|
|
+ $name = '基础版';
|
|
|
+ $year = 6;
|
|
|
+ $cash = '3.1合同金额:1000元/每年,合计总金额['.$info['agent_cash'].']元。';
|
|
|
+ }
|
|
|
+
|
|
|
+ $content[] = $this->content('', '鉴于甲方购买乙方名称为《 厨人易料业务管理系统 》版本为《 '.$name.' 》的系统使用权(以下简称为“软件”),双方经协商一致,由乙方为甲方提供软件服务,双方达成本服务合同。');
|
|
|
+
|
|
|
+ $content[] = $this->content('第一条服务事项', '1.1服务内容包括:
|
|
|
+1.技术维护服务
|
|
|
+(1)设备变更带来的环境适配调整;
|
|
|
+(2)各类操作系统与软件适配带来的调整工作;
|
|
|
+(3)网络故障带来的软件重新安装、数据修复;
|
|
|
+(4)及时更新产品及同版本升级程序;
|
|
|
+(5)产品故障、普通问题、重大问题的远程技术支持;
|
|
|
+(6)接受产品程序改进意见并酌情纳入新产品开发计划;
|
|
|
+(7)其他无法预计的故障的排除。
|
|
|
+2.远程实施指导
|
|
|
+提供产品说明和演示文档,远程指导参数设置及数据导入(以及上线测试)。
|
|
|
+3.远程应用培训
|
|
|
+对软件管理员提供远程培训及操作手册。
|
|
|
+1.2 服务方式及响应时间
|
|
|
+(1)服务方式:电话、电子邮件和微信;乙方通常先以电话的方式了解甲方需要解决的问题,并为甲方提出处理的办法,引导甲方自行解决,在无法解决时,乙方将由技术人员上门解决。针对登录故障、软件故障判断、软件安装与注册、软件适用与指导、数据备份、数据修正、数据恢复、版本更新等服务项目提供电子支持、远程、热线服务。
|
|
|
+(2)响应时间:在接到甲方报障信息后乙方视情况缓急尽快响应,处于人机并行试运行阶段时,属于产品故障在24小时内响应,普通问题三天内答复,重大问题特殊处理。
|
|
|
+1.3 服务期限:
|
|
|
+乙方为甲方提供['.$year.']年的服务,服务期最长6年,服务期满后,如甲方还需要乙方为甲方提供服务,甲、乙双方需重新协商签订服务协议。
|
|
|
+1.4 软件保修与版本升级:
|
|
|
+(1)正常使用时损坏,致使软件无法正常运行给予保修;
|
|
|
+(2)接受甲方对产品程序提出的改进意见并酌情纳入升级计划;
|
|
|
+(3)非正常使用造成软件损坏,一律收费保修;
|
|
|
+(4)对不同运行环境需要单独具体升级软件的,按甲方发布的有关规定办理。');
|
|
|
+
|
|
|
+ $content[] = $this->content('第二条信息保密', '2.1甲方不得以任何形式对所购买软件进行解密,并保证不交给任何第三方人员使用、展示。
|
|
|
+2.2乙方为甲方的数据保密,保证不将甲方的数据泄露给第三者,除非依据有关法律、法规的规定应向有关政府主管部门办理有关批准、备案的手续;或为履行在本合同项下的义务或声明与保证须向第三人披露。');
|
|
|
+
|
|
|
+ $content[] = $this->content('第三条结算金额及方式', $cash . '
|
|
|
+3.2结算方式:厨人易料商城线上支付。');
|
|
|
+
|
|
|
+ $content[] = $this->content('第四条 期权赠与', '甲方采购乙方的软件,在签署乙方的《软件服务合同》并支付成功后,拥有以零元价格认购乙方等值合同金额额度原始期权的权利。根据2021年11月市场机构的评估报告数据计算,乙方公司整体估值约为5.01亿元,乙方所赠期权的行权要求如下:
|
|
|
+4.1乙方成功在中国境内外合法的证券交易所上市交易;
|
|
|
+4.2甲方认同乙方的经营理念和经营规划;
|
|
|
+4.3甲方不得转让该赠与期权的权利,该权利有效期截止至甲方将所赠额度兑换完毕;
|
|
|
+4.4甲方期权兑换完毕后须锁定12个月方可自由交易,即股票有1年的禁售期。');
|
|
|
+
|
|
|
+ $content[] = $this->content('第五条 争议解决', '5.1本协议未尽之事宜,由双方友好协商后另行签订补充协议,补充协议与本协议具有同等法律效力。
|
|
|
+5.2因本合同引起的或与本合同有关的任何争议,由合同各方协商解决,也可由有关部门调解;协商或调解不成的,应向乙方所在地有管辖权的人民法院起诉。');
|
|
|
+
|
|
|
+ $content[] = $this->content('第六条 保密条款', '本合同各方保证,除非依据有关法律、法规的规定应向有关政府主管部门办理有关批准、备案的手续;或为履行在本合同项下的义务或声明与保证须向第三人披露;或经本合同其他方事先书面同意,本合同任何一方对本合同另一方及合同项下之所有内容、信息、事务均负有保密义务(除已在公开渠道获得的信息外),泄露秘密一方应向其他方赔偿由此造成的经济损失及其他损失。本条款不因本合同的终止而失效。');
|
|
|
+
|
|
|
+ $content[] = $this->content('第七条 其他', '7.1本合同一经支付立即生效,鉴于交付系统已经产生所有费用,一律无法终止本合同,无法退款。
|
|
|
+7.2本合同自双方签字或盖章后生效。除本合同另有约定外,合同的任何变更应经双方共同签署书面合同后方可生效。
|
|
|
+7.3本合同一式两份,甲乙双方各执一份。各份合同文本具有同等法律效力。');
|
|
|
+
|
|
|
+ return $content;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public function pdf_3($agreement, $info)
|
|
|
+ {
|
|
|
+ $base = Dever::db('setting/base')->find();
|
|
|
+
|
|
|
+ if (isset($info['agreement_id'])) {
|
|
|
+ $order_num = $info['order_num'];
|
|
|
+ } else {
|
|
|
+ $order_num = '待生成';
|
|
|
+ }
|
|
|
+ if ($info['type'] == 1) {
|
|
|
+ $idcard = $info['idcard'];
|
|
|
+ } else {
|
|
|
+ $idcard = $info['company_number'];
|
|
|
+ }
|
|
|
+
|
|
|
+ $role = Dever::db('setting/role')->find($info['role']);
|
|
|
+ $name = $this->name($agreement, $info, $role);
|
|
|
+
|
|
|
+ $oagreement = Dever::db('setting/agreement')->find(1);
|
|
|
+ $oname = $this->name($oagreement, $info, $role);
|
|
|
+
|
|
|
+ $price = $info['price'];
|
|
|
+
|
|
|
+ $area = Dever::load("area/api.string", $info['area'], '');
|
|
|
+
|
|
|
+ $address = '';
|
|
|
+
|
|
|
+ if (isset($info['sdate']) && $info['sdate']) {
|
|
|
+ $sdate = date('Y年m月d日', $info['sdate']);
|
|
|
+ $edate = date('Y年m月d日', $info['edate']);
|
|
|
+ $qdate = date('Y年m月d日', $info['qdate']);
|
|
|
+ } else {
|
|
|
+ $sdate = date('Y年m月d日');
|
|
|
+ $edate = date('Y年m月d日', strtotime('+3 year'));
|
|
|
+ $qdate = $sdate;
|
|
|
+
|
|
|
+ $old = Dever::db('agent/member_agreement')->getOld(array('mid' => $info['mid'], 'agreement_id' => 1));
|
|
|
+ if ($old) {
|
|
|
+ $sdate = date('Y年m月d日', $old['sdate']);
|
|
|
+ $edate = date('Y年m月d日', $old['edate']);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $company_name = '中食民安(北京)科技有限公司';
|
|
|
+
|
|
|
+ $pdf = Dever::load('pdf/lib/core')->init();
|
|
|
+ $pdf->SetTitle($name);
|
|
|
+ $pdf->font(18, 'B');
|
|
|
+ $pdf->center('软 件 服 务 合 同');
|
|
|
+ $pdf->br(2);
|
|
|
+
|
|
|
+ $content = array();
|
|
|
+
|
|
|
+ $content[] = array
|
|
|
+ (
|
|
|
+ 'name' => array
|
|
|
+ (
|
|
|
+ '甲方(服务接受方)',
|
|
|
+ 30,
|
|
|
+ STR_PAD_LEFT,
|
|
|
+ 50,
|
|
|
+ ),
|
|
|
+ 'content' => array
|
|
|
+ (
|
|
|
+ ' ' . $info['name'],
|
|
|
+ 100,
|
|
|
+ STR_PAD_RIGHT,
|
|
|
+ 80,
|
|
|
+ ),
|
|
|
+ );
|
|
|
+
|
|
|
+ $content[] = array
|
|
|
+ (
|
|
|
+ 'name' => array
|
|
|
+ (
|
|
|
+ '统一社会信用代码或身份证',
|
|
|
+ 36,
|
|
|
+ STR_PAD_LEFT,
|
|
|
+ 63,
|
|
|
+ ),
|
|
|
+ 'content' => array
|
|
|
+ (
|
|
|
+ ' ' . $idcard,
|
|
|
+ 100,
|
|
|
+ STR_PAD_RIGHT,
|
|
|
+ 40,
|
|
|
+ ),
|
|
|
+ );
|
|
|
+
|
|
|
+ $content[] = array
|
|
|
+ (
|
|
|
+ 'name' => array
|
|
|
+ (
|
|
|
+ '居住地址',
|
|
|
+ 20,
|
|
|
+ STR_PAD_LEFT,
|
|
|
+ 29,
|
|
|
+ ),
|
|
|
+ 'content' => array
|
|
|
+ (
|
|
|
+ ' ' . $address,
|
|
|
+ 100,
|
|
|
+ STR_PAD_RIGHT,
|
|
|
+ 80,
|
|
|
+ ),
|
|
|
+ );
|
|
|
+
|
|
|
+ $content[] = array
|
|
|
+ (
|
|
|
+ 'name' => array
|
|
|
+ (
|
|
|
+ '联系方式',
|
|
|
+ 20,
|
|
|
+ STR_PAD_LEFT,
|
|
|
+ 29,
|
|
|
+ ),
|
|
|
+ 'content' => array
|
|
|
+ (
|
|
|
+ ' ' . $info['mobile'],
|
|
|
+ 160,
|
|
|
+ STR_PAD_RIGHT,
|
|
|
+ 80,
|
|
|
+ ),
|
|
|
+ );
|
|
|
+
|
|
|
+ $content[] = array
|
|
|
+ (
|
|
|
+ 'name' => array
|
|
|
+ (
|
|
|
+ '乙方(服务提供方)',
|
|
|
+ 30,
|
|
|
+ STR_PAD_LEFT,
|
|
|
+ 50,
|
|
|
+ ),
|
|
|
+ 'content' => array
|
|
|
+ (
|
|
|
+ ' ' . $company_name,
|
|
|
+ 100,
|
|
|
+ STR_PAD_RIGHT,
|
|
|
+ 80,
|
|
|
+ ),
|
|
|
+ );
|
|
|
+
|
|
|
+ $content[] = array
|
|
|
+ (
|
|
|
+ 'name' => array
|
|
|
+ (
|
|
|
+ '统一社会信用代码',
|
|
|
+ 28,
|
|
|
+ STR_PAD_LEFT,
|
|
|
+ 46,
|
|
|
+ ),
|
|
|
+ 'content' => array
|
|
|
+ (
|
|
|
+ ' 91110106MA01T8R42B',
|
|
|
+ 100,
|
|
|
+ STR_PAD_RIGHT,
|
|
|
+ 40,
|
|
|
+ ),
|
|
|
+ );
|
|
|
+
|
|
|
+ $content[] = array
|
|
|
+ (
|
|
|
+ 'name' => array
|
|
|
+ (
|
|
|
+ '法定代表人',
|
|
|
+ 22,
|
|
|
+ STR_PAD_LEFT,
|
|
|
+ 33,
|
|
|
+ ),
|
|
|
+ 'content' => array
|
|
|
+ (
|
|
|
+ ' 王雷',
|
|
|
+ 100,
|
|
|
+ STR_PAD_RIGHT,
|
|
|
+ 40,
|
|
|
+ ),
|
|
|
+ );
|
|
|
+
|
|
|
+ $content[] = array
|
|
|
+ (
|
|
|
+ 'name' => array
|
|
|
+ (
|
|
|
+ '居住地址',
|
|
|
+ 20,
|
|
|
+ STR_PAD_LEFT,
|
|
|
+ 29,
|
|
|
+ ),
|
|
|
+ 'content' => array
|
|
|
+ (
|
|
|
+ ' 北京市北京经济技术开发区经海四路22号院四区5号楼14层1706',
|
|
|
+ 100,
|
|
|
+ STR_PAD_RIGHT,
|
|
|
+ 80,
|
|
|
+ ),
|
|
|
+ );
|
|
|
+
|
|
|
+ $content[] = array
|
|
|
+ (
|
|
|
+ 'name' => array
|
|
|
+ (
|
|
|
+ '联系方式',
|
|
|
+ 20,
|
|
|
+ STR_PAD_LEFT,
|
|
|
+ 29,
|
|
|
+ ),
|
|
|
+ 'content' => array
|
|
|
+ (
|
|
|
+ ' 010-53391855',
|
|
|
+ 160,
|
|
|
+ STR_PAD_RIGHT,
|
|
|
+ 80,
|
|
|
+ ),
|
|
|
+ );
|
|
|
+ $pdf->setCellHeightRatio(2);
|
|
|
+ foreach ($content as $k => $v) {
|
|
|
+ $pdf->font($this->font_size);
|
|
|
+ $pdf->left(Dever::mb_str_pad($v['name'][0] . ':', $v['name'][1], ' ', $v['name'][2]), $v['name'][3]);
|
|
|
+ $pdf->font($this->font_size, '');
|
|
|
+ $pdf->left(Dever::mb_str_pad($v['content'][0], $v['content'][1], ' ', $v['content'][2]), $v['content'][3]);
|
|
|
+ $pdf->br();
|
|
|
+ if ($k == 3) {
|
|
|
+ $pdf->br();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $pdf->br();
|
|
|
+ $pdf->setCellPaddings(10, 0, 10, 0);
|
|
|
+
|
|
|
+ $oname = str_replace('.pdf', '', $oname);
|
|
|
+
|
|
|
+ if (isset($info['content']) && $info['content']) {
|
|
|
+ $info['content'] = Dever::array_decode($info['content']);
|
|
|
+ foreach($info['content'] as $k => $v) {
|
|
|
+ $pdf->content($v['name'], $v['content'], $this->font_size);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ $method = 'content_' . $agreement['type'];
|
|
|
+ $content = $this->$method($agreement, $info, array($role, $name, $oname, $sdate, $edate, $qdate));
|
|
|
+
|
|
|
+ foreach ($content as $k => $v) {
|
|
|
+ $pdf->content($v['name'], $v['content'], $this->font_size);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (isset($info['create_state']) && $info['create_state'] == 1) {
|
|
|
+ $up = array();
|
|
|
+ $up['content'] = Dever::array_encode($content);
|
|
|
+ $up['where_id'] = $info['id'];
|
|
|
+ $state = Dever::db('agent/member_agreement')->update($up);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $pdf->br(1, 20);
|
|
|
+ $pdf->font($this->font_size, '');
|
|
|
+ $pdf->left('甲 方(盖章):', 90)->left('乙 方(盖章/签字):', 90);
|
|
|
+ $pdf->br();
|
|
|
+
|
|
|
+ $pdf->br(1, 1);
|
|
|
+ $pdf->font($this->font_size, '');
|
|
|
+ $pdf->left('日 期:'.$qdate, 90);
|
|
|
+ $pdf->left('日 期:'.$qdate, 80);
|
|
|
+ $pdf->br();
|
|
|
+
|
|
|
+ $pic = Dever::pic($base['agreement_sign']);
|
|
|
+
|
|
|
+ $cx = $pdf->GetX();
|
|
|
+ $cy = $pdf->GetY();
|
|
|
+
|
|
|
+ $x = $cx + 50;
|
|
|
+ $y = $cy - 25;
|
|
|
+
|
|
|
+ $pdf->Image($pic, $x, $y, 15, 15);
|
|
|
+
|
|
|
+ $x += 100;
|
|
|
+
|
|
|
+ if ($info['sign']) {
|
|
|
+ $info['sign'] = Dever::pic($info['sign']);
|
|
|
+ if (strstr($info['sign'], 'http')) {
|
|
|
+ $pdf->Image($info['sign'], $x, $y, 15, 15);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ $pdf->out($name);
|
|
|
+ }
|
|
|
+
|
|
|
public function data($id){
|
|
|
$info = Dever::db('agent/member_agreement')->find($id);
|
|
|
$cdate = date('Y-m-d H:i',$info['cdate']);
|