| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- <?php
- class flow_custractClassModel extends flowModel
- {
- public $typearr,$typesarr,$statearr,$dtobj,$crmobj,$goodmobj;
-
- public function initModel(){
- $this->typearr = array('收款合同','付款合同');
- $this->typesarr = array('收','付');
- $this->statearr = c('array')->strtoarray('待生效|blue,生效中|green,已过期|#888888');
- $this->dtobj = c('date');
- $this->crmobj = m('crm');
- $this->goodmobj = m('goodm');
-
- $this->wherejoin['custfina'] = 'htid';
- $this->wherejoin['custfinb'] = 'htid';
- }
-
- //作废或删除时
- protected function flowzuofeibill($sm)
- {
- m('goodm')->update('`custractid`=0', "`custractid`='".$this->id."'");//销售单取消关联合同
-
-
-
- $xiaoid = (int)arrvalue($this->rs,'xiaoid','0');
- }
-
- public function flowrsreplace($rs, $lx=0){
- $type = $rs['type'];
- $rs['type'] = $this->typearr[$type];
- $statetext = '';
- $dt = $this->rock->date;
- $htstatus = 0;
- if($rs['startdt']>$dt){
- $statetext='待生效';
- }else if($rs['startdt']<=$dt && $rs['enddt']>=$dt){
- $jg = $this->dtobj->datediff('d', $dt, $rs['enddt']);
- $statetext='<font color=green>生效中</font><br><font color=#888888>'.$jg.'天过期</font>';
- if($jg==0)$statetext='<font color=green>今日到期</font>';
- $htstatus = 1;
- }else if($rs['enddt']<$dt){
- $statetext='<font color=#888888>已过期</font>';
- $rs['ishui'] = 1;
- $htstatus = 2;
- }
- $rs['statetext'] = $statetext;
- $nrss = $this->crmobj->ractmoney($rs);
- $ispay = $nrss[0];
- $moneys = $nrss[1];
- $dsmoney = '';
- $ts = $this->typesarr[$type];
- if($ispay==1){
- $dsmoney = '<font color=green>已全部'.$ts.'款</font>';
- }else{
- $dsmoney = '待'.$ts.'<font color=#ff6600>'.$moneys.'</font>';
- }
- if(isset($rs['xiaoid']) && $rs['xiaoid']>0){
- $xiaors = $this->goodmobj->getone("`id`='".$rs['xiaoid']."' and `status`<>5");
- if($xiaors){
- if($lx==1){
- $dsmoney.=',销售单:<a href="'.$this->getxiangurl('custxiao',$rs['xiaoid'],'auto').'">'.$xiaors['num'].'</a>';
- }else{
- $dsmoney.=',销售单:<br>'.$xiaors['num'].'';
- }
- }else{
- $this->update('`xiaoid`=0', $rs['id']);
- }
- }
- $rs['moneys'] = $dsmoney;
- $rs['htstatus'] = $htstatus;
- return $rs;
- }
-
- protected function flowbillwhere($uid, $lx)
- {
-
- $month = $this->rock->post('dt');
- $where = '';
- if($month!=''){
- $where =" and `signdt` like '$month%'";
- }
-
-
- return array(
- 'where' => $where,
- 'order' => '`optdt` desc',
- //'orlikefields' => 'custname'
- );
- }
-
- protected function flowoptmenu($ors, $arrs)
- {
- //创建待收付款单
- if($ors['num']=='cjdaishou'){
- $moneys = m('crm')->getmoneys($this->rs['id']);
- $money = $this->rs['money'] - $moneys;
- if($money > 0){
- $arr['htid'] = $this->rs['id'];
- $arr['htnum'] = $this->rs['num'];
- $arr['uid'] = $this->rs['uid'];
- $arr['custid'] = $this->rs['custid'];
- $arr['custname']= $this->rs['custname'];
- $arr['dt'] = $this->rock->date;
- $arr['optdt'] = $this->rock->now;
- $arr['createdt']= $this->rock->now;
- $arr['optname'] = $this->adminname;
- $arr['createname']= $this->adminname;
- $arr['createid'] = $this->adminid;
- //$arr['optid'] = $this->adminid;
- $arr['type'] = $this->rs['type'];
- $arr['explain'] = $arrs['sm'];
- $arr['money'] = $money;
- $newid = m('custfina')->insert($arr);
-
- if($this->rs['type']=='0'){
- m('flow')->submit('custfina', $newid, '提交');
- }else{
- m('flow')->submit('custfinb', $newid, '提交');
- }
-
- }
- }
- }
-
-
- /**
- * 客户合同到期提醒
- */
- public function custractdaoqi()
- {
- $dt = $this->rock->date;
- $rows = $this->getall("status=1 and `enddt` is not null and `enddt`>='$dt'",'uid,num,custname,enddt','`uid`');
- $txlist = m('option')->getval('crmtodo','0,3,7,15,30');//提醒的时间
- $txarr = explode(',', $txlist);
- $dtobj = c('date');
- $txrows = array();
- foreach($rows as $k=>$rs){
- $jg = $dtobj->datediff('d', $dt, $rs['enddt']);
- $uid= $rs['uid'];
- if(in_array($jg, $txarr)){
- $strs = ''.$jg.'天后('.$rs['enddt'].')';
- if($jg==1)$strs='明天';
- if($jg==0)$strs='今天';
- if(!isset($txrows[$uid]))$txrows[$uid]='';
- $txrows[$uid] .= '客户['.$rs['custname'].']的[合同:'.$rs['num'].']将在'.$strs.'到期;';
- }
- }
- foreach($txrows as $uid=>$cont){
- $this->push($uid, '客户,CRM', $cont, '客户合同到期提醒');
- }
- }
-
- //对外的详情页
- public function flowopenxiang($da, $xiangdata)
- {
- $zdarr = array('num','custname','type','fenlei','signdt','money','startdt','enddt','explain');
- $slsts = array();
- foreach($xiangdata as $k=>$rs){
- if(in_array($rs['fields'], $zdarr)){
- $slsts[] = $rs;
- }
- }
- //相关文件
- $filedata = array();
- $htfileid = arrvalue($da,'htfileid');
- if($htfileid){
- $filedata = m('file')->getall('id in('.$htfileid.')','id,filename,filesizecn,fileext');
- }
- return array('xiangdata'=>$slsts,'filedata'=>$filedata);
- }
- }
|