|
|
@@ -416,7 +416,6 @@ class PackagingCountDocument extends Api
|
|
|
*/
|
|
|
public function del()
|
|
|
{
|
|
|
- //get请求
|
|
|
if(!$this->request->isPost()){
|
|
|
$this->error('请求方式错误');
|
|
|
}
|
|
|
@@ -443,4 +442,106 @@ class PackagingCountDocument extends Api
|
|
|
$this->success('成功');
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 工序汇总导出
|
|
|
+ * @ApiMethod (POST)
|
|
|
+ * @param string gxmc
|
|
|
+ * @param string start_time
|
|
|
+ * @param string end_time
|
|
|
+ * @param string file_name
|
|
|
+ * @param array fields
|
|
|
+ */
|
|
|
+ public function processExport(){
|
|
|
+ if(!$this->request->isPost()){
|
|
|
+ $this->error('请求方式错误');
|
|
|
+ }
|
|
|
+ $req = $this->request->param();
|
|
|
+ $arr = [
|
|
|
+ 'gxmc','start_time', 'end_time', 'file_name'
|
|
|
+ ];
|
|
|
+ foreach ($arr as $key => $value){
|
|
|
+ if (!isset($req[$value])){
|
|
|
+ $this->error('参数错误',$value,$key+1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!(isset($req['fields']) && count($req['fields'])!=0)){
|
|
|
+ $this->error('参数错误','fields',100);
|
|
|
+ }
|
|
|
+ $field = '';
|
|
|
+ $arr = [
|
|
|
+ 'sczl_rq' =>['日期','LEFT(sczl_rq, 10) as sczl_rq'],
|
|
|
+ 'sczl_bh' =>['员工编号','sczl_bh'],
|
|
|
+ 'sczl_jsss' =>['计时时数','sczl_jsss'],
|
|
|
+ 'sczl_gdbh' =>['工单编号','sczl_gdbh1, sczl_gdbh2, sczl_gdbh3, sczl_gdbh4, sczl_gdbh5, sczl_gdbh6'],
|
|
|
+ 'sczl_yjGx' =>['印件工序','rtrim(sczl_yjGx1) as sczl_yjGx1, rtrim(sczl_yjGx2) as sczl_yjGx2, rtrim(sczl_yjGx3) as sczl_yjGx3, rtrim(sczl_yjGx4) as sczl_yjGx4, rtrim(sczl_yjGx5) as sczl_yjGx5, rtrim(sczl_yjGx6) as sczl_yjGx6'],
|
|
|
+ 'sczl_gxmc' =>['工序名称','rtrim(sczl_gxmc1) as sczl_gxmc1, rtrim(sczl_gxmc2) as sczl_gxmc2, rtrim(sczl_gxmc3) as sczl_gxmc3, rtrim(sczl_gxmc4) as sczl_gxmc4, rtrim(sczl_gxmc5) as sczl_gxmc5, rtrim(sczl_gxmc6) as sczl_gxmc6'],
|
|
|
+ 'sczl_cl' =>['产量','sczl_cl1, sczl_cl2, sczl_cl3, sczl_cl4, sczl_cl5, sczl_cl6'],
|
|
|
+ 'sczl_PgCl' =>['每箱产量','sczl_PgCl1, sczl_PgCl2, sczl_PgCl3, sczl_PgCl4, sczl_PgCl5, sczl_PgCl6'],
|
|
|
+ 'sczl_计产系数' =>['计产系数','sczl_计产系数1, sczl_计产系数2, sczl_计产系数3, sczl_计产系数4, sczl_计产系数5, sczl_计产系数6'],
|
|
|
+ 'sczl_dedh' =>['定额代号','rtrim(sczl_dedh1) as sczl_dedh1, rtrim(sczl_dedh2) as sczl_dedh2, rtrim(sczl_dedh3) as sczl_dedh3, rtrim(sczl_dedh4) as sczl_dedh4, rtrim(sczl_dedh5) as sczl_dedh5, rtrim(sczl_dedh6) as sczl_dedh6']
|
|
|
+ ];
|
|
|
+ $data[0] = [];
|
|
|
+ foreach ($req['fields'] as $k=>$v){
|
|
|
+ if(array_key_exists($v,$arr)){
|
|
|
+ if ($k==0){
|
|
|
+ $field .= $arr[$v][1];
|
|
|
+ }else{
|
|
|
+ $field .= ','.$arr[$v][1];
|
|
|
+ }
|
|
|
+ if($v=='sczl_bh'){
|
|
|
+ array_push($data[0],$arr[$v][0]);
|
|
|
+ array_push($data[0],'员工姓名');
|
|
|
+ }else if($v=='sczl_gdbh'){
|
|
|
+ array_push($data[0],$arr[$v][0]);
|
|
|
+ array_push($data[0],'印件名称');
|
|
|
+ }else{
|
|
|
+ array_push($data[0],$arr[$v][0]);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //根据条件查询数据
|
|
|
+ $rows = db()->table('db_包装计件')
|
|
|
+ ->field($field)
|
|
|
+ ->where('sczl_rq','between',[$req['start_time'],$req['end_time']])
|
|
|
+ ->where(['sczl_gxmc1|sczl_gxmc2|sczl_gxmc3|sczl_gxmc4|sczl_gxmc5|sczl_gxmc6'=>['like','%'.$req['gxmc'].'%']])
|
|
|
+ ->select();
|
|
|
+ $gd = db()->table('工单_基本资料')->column('Gd_gdbh, Gd_cpmc');
|
|
|
+ $rs = db()->table('人事_基本资料')->column('员工编号, 员工姓名');
|
|
|
+
|
|
|
+ for ($i = 1; $i <= 6; $i++) {
|
|
|
+ foreach ($rows as $key=>$value){
|
|
|
+ if (trim($value['sczl_gdbh'.$i])=='') continue;
|
|
|
+ if (trim($value['sczl_gxmc'.$i])!=$req['gxmc']) continue;
|
|
|
+ $subArray = [];
|
|
|
+ foreach ($req['fields'] as $k=>$v){
|
|
|
+ if(array_key_exists($v,$arr)){
|
|
|
+ if($v=='sczl_rq' || $v=='sczl_jsss'){
|
|
|
+ array_push($subArray,$value[$v]);
|
|
|
+// $subArray[$v] = $value[$v];
|
|
|
+ }else if($v=='sczl_bh'){
|
|
|
+ $name = array_key_exists($value[$v],$rs) ? trim($rs[$value[$v]]) : '';
|
|
|
+ array_push($subArray,$value[$v]);
|
|
|
+ array_push($subArray,$name);
|
|
|
+// $subArray[$v] = $value[$v];
|
|
|
+// $subArray['name'] = array_key_exists($value[$v],$rs) ? trim($rs[$value[$v]]) : '';
|
|
|
+ }else if($v=='sczl_gdbh'){
|
|
|
+ $cpmc = array_key_exists($value[$v.$i],$gd) ? trim($gd[$value[$v.$i]]) : '';
|
|
|
+ array_push($subArray,$value[$v.$i]);
|
|
|
+ array_push($subArray,$cpmc);
|
|
|
+// $subArray[$v] = $value[$v.$i];
|
|
|
+// $subArray['cpmc'] = array_key_exists($value[$v.$i],$gd) ? trim($gd[$value[$v.$i]]) : '';
|
|
|
+ }else{
|
|
|
+ array_push($subArray,$value[$v.$i]);
|
|
|
+// $subArray[$v] = $value[$v.$i];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ array_push($data,$subArray);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ $this->success('成功',['file_name'=>$req['file_name'],'data'=>$data]);
|
|
|
+ }
|
|
|
}
|