LargeWasteRewardPunish.php 42 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985
  1. <?php
  2. namespace app\api\controller;
  3. use app\common\controller\Api;
  4. use think\db;
  5. use think\Request;
  6. use function fast\e;
  7. /**
  8. * 工序大废品惩奖记录接口
  9. */
  10. class LargeWasteRewardPunish extends Api
  11. {
  12. protected $noNeedLogin = ['*'];
  13. protected $noNeedRight = ['*'];
  14. /**
  15. * 首页
  16. *
  17. */
  18. public function index()
  19. {
  20. $this->success('请求成功');
  21. }
  22. /**
  23. * 获取工序大废品惩奖侧边栏
  24. * @ApiMethod (GET)
  25. */
  26. public function getTab()
  27. {
  28. //get请求
  29. if(!$this->request->isGet()){
  30. $this->error('请求方式错误');
  31. }
  32. $rows = db()->table('db_大废品')
  33. ->field('DISTINCT(LEFT(sys_rq, 7)) AS mouth,LEFT(sys_rq, 10) as date, COUNT(*) as counts')
  34. ->group('date')
  35. ->order('UniqId desc')
  36. ->limit(40)
  37. ->select();
  38. $list = [];
  39. foreach($rows as $key=>$value){
  40. if (!isset($list[$value['mouth']])){
  41. $list[$value['mouth']] = [];
  42. }
  43. $arr['date'] = str_replace('-', '.', $rows[$key]['date']);
  44. $arr['counts'] = $rows[$key]['counts'];
  45. array_push($list[$value['mouth']],$arr);
  46. // $list[$value['mouth']]['date'] = str_replace('-', '.', $rows[$key]['date']);
  47. }
  48. $this->success('成功',$list);
  49. }
  50. /**
  51. * 获取工序大废品惩奖侧边栏根据工单
  52. * @ApiMethod (GET)
  53. */
  54. public function getTabByGd()
  55. {
  56. //get请求
  57. if(!$this->request->isGet()){
  58. $this->error('请求方式错误');
  59. }
  60. $rows = db()->table('db_大废品')
  61. ->field('sczl_gdbh,rtrim(g.成品名称) as 成品名称')
  62. ->join('工单_基本资料 g','g.Gd_gdbh=db_大废品.sczl_gdbh','LEFT')
  63. ->group('sczl_gdbh')
  64. ->whereTime('db_大废品.sys_rq', '>=', strtotime('-60 days'))
  65. ->order('sczl_gdbh desc')
  66. ->select();
  67. foreach($rows as $key=>$value){
  68. $data[$key]['label']=$value['sczl_gdbh'].' 【'.$value['成品名称'].'】';
  69. $data[$key]['sczl_gdbh']=$value['sczl_gdbh'];
  70. }
  71. $this->success('成功',$data);
  72. }
  73. /**
  74. * 获取工序大废品惩奖列表
  75. */
  76. public function getList()
  77. {
  78. if (!$this->request->isGet()) {
  79. $this->error('请求方式错误');
  80. }
  81. $req = $this->request->param();
  82. $rq = $req['date'];
  83. $page = 1;
  84. $limit = 15;
  85. // 处理分页
  86. if (isset($req['page']) && !empty($req['page'])) $page = $req['page'];
  87. if (isset($req['limit']) && !empty($req['limit'])) $limit = $req['limit'];
  88. // 规范化日期格式
  89. $date = substr($req['date'], 0, 10);
  90. $req['date'] = str_replace('.', '-', $date);
  91. $where = [];
  92. /*
  93. * 按月份查询是按照生产月份进行筛选
  94. * 按日查询是按照添加时间筛选
  95. */
  96. if (!empty($req['date'])) {
  97. // 根据日期中是否包含中文字符,决定查询条件
  98. if (preg_match('/[\x{4e00}-\x{9fa5}]/u', $rq) > 0) {
  99. $where['sys_rq'] = ['LIKE', $req['date'] . '%'];
  100. $order = [
  101. 'sys_rq' => 'DESC',
  102. 'UniqId' => 'DESC'
  103. ];
  104. } else {
  105. $where['sczl_rq'] = ['LIKE', $req['date'] . '%'];
  106. $order = [
  107. 'sczl_rq' => 'DESC',
  108. 'UniqId' => 'DESC'
  109. ];
  110. }
  111. } else {
  112. $this->error('参数错误');
  113. }
  114. // 查询数据库,获取数据
  115. $res = db()->table('db_大废品')
  116. ->field('sczl_gdbh, LEFT(sczl_rq, 10) as sczl_rq, rtrim(sczl_numDesc) as sczl_numDesc, sczl_ls, sczl_yjno,
  117. rtrim(责任部门) as 责任部门, sczl_cl,
  118. rtrim(sczl_fplxA) as sczl_fplxA, sczl_fplxB, jl_jtbh as Jl_bzdh,
  119. sczl_jtbh as sczl_bzdh,rtrim(sys_id) as sys_id, sys_rq, UniqId,
  120. sczl_bh1,sczl_bh2,sczl_bh3,sczl_bh4,
  121. sczl_je1, sczl_je2, sczl_je3, sczl_je4,
  122. JL_bh1,JL_bh2,JL_bh3, JL_bh4,
  123. JL_Je1, JL_Je2, JL_Je3, JL_Je4
  124. ')
  125. // ->where('sczl_gdbh', $req['date'])
  126. ->where($where)
  127. ->order($order)
  128. ->page($page, $limit)
  129. ->select();
  130. // 如果查询不到数据,则使用备用查询条件
  131. if ($res) {
  132. $rows = $res;
  133. // $total = db()->table('db_大废品')->where('sczl_gdbh', $req['date'])->count();
  134. $total = db()->table('db_大废品')->where($where)->count();
  135. } else {
  136. $rows = db()->table('db_大废品')
  137. ->field('sczl_gdbh, LEFT(sczl_rq, 10) as sczl_rq, rtrim(sczl_numDesc) as sczl_numDesc, sczl_ls, sczl_yjno,
  138. rtrim(责任部门) as 责任部门, sczl_cl,
  139. rtrim(sczl_fplxA) as sczl_fplxA, sczl_fplxB, jl_jtbh as Jl_bzdh,
  140. sczl_jtbh as sczl_bzdh,rtrim(sys_id) as sys_id, sys_rq, UniqId,
  141. sczl_bh1,sczl_bh2,sczl_bh3,sczl_bh4,
  142. sczl_je1, sczl_je2, sczl_je3, sczl_je4,
  143. JL_bh1,JL_bh2,JL_bh3, JL_bh4,
  144. JL_Je1, JL_Je2, JL_Je3, JL_Je4
  145. ')
  146. ->where($where)
  147. ->order($order)
  148. ->page($page, $limit)
  149. ->select();
  150. $total = db()->table('db_大废品')->where($where)->count();
  151. }
  152. // 获取相关数据用于转换
  153. $gd = db()->table('工单_印件资料')->column('Yj_Gdbh, yj_yjmc');
  154. $rs = db()->table('人事_基本资料')->where('员工姓名', '<>', '通用编号')->column('员工编号, 员工姓名');
  155. //查询结果
  156. foreach ($rows as $key => $value) {
  157. $rows[$key]['yj_yjmc'] = array_key_exists($value['sczl_gdbh'], $gd) ? sprintf("%02d", $value['sczl_yjno']) . '-' . trim($gd[$value['sczl_gdbh']]) : '';
  158. $rows[$key]['JL_bh1'] = array_key_exists($value['JL_bh1'], $rs) ? trim($rs[$value['JL_bh1']]) : '';
  159. $rows[$key]['JL_bh2'] = array_key_exists($value['JL_bh2'], $rs) ? trim($rs[$value['JL_bh2']]) : '';
  160. $rows[$key]['JL_bh3'] = array_key_exists($value['JL_bh3'], $rs) ? trim($rs[$value['JL_bh3']]) : '';
  161. $rows[$key]['JL_bh4'] = array_key_exists($value['JL_bh4'], $rs) ? trim($rs[$value['JL_bh4']]) : '';
  162. $rows[$key]['sczl_bh1'] = array_key_exists($value['sczl_bh1'], $rs) ? trim($rs[$value['sczl_bh1']]) : '';
  163. $rows[$key]['sczl_bh2'] = array_key_exists($value['sczl_bh2'], $rs) ? trim($rs[$value['sczl_bh2']]) : '';
  164. $rows[$key]['sczl_bh3'] = array_key_exists($value['sczl_bh3'], $rs) ? trim($rs[$value['sczl_bh3']]) : '';
  165. $rows[$key]['sczl_bh4'] = array_key_exists($value['sczl_bh4'], $rs) ? trim($rs[$value['sczl_bh4']]) : '';
  166. $rows[$key]['sczl_fplxB'] = $value['sczl_fplxB'] == 1 ? '制程废' : '';
  167. /*
  168. * 惩罚金额人员规则
  169. * 1、机长(sczl_je1) 当天超过 1000,显示 1000
  170. * 2、组员(sczl_je2、sczl_je3、sczl_je4) 当天超过 500,显示 500
  171. */
  172. for ($i = 1; $i <= 4; $i++) {
  173. // 惩罚人员编号
  174. $bhKey = "sczl_bh{$i}";
  175. // 惩罚金额
  176. $jeKey = "sczl_je{$i}";
  177. // 如果人员编号不为空,且惩罚金额大于 0,则进行计算
  178. if (!empty($rows[$key][$bhKey]) && $value[$jeKey] > 0) {
  179. // 计算原始惩罚金额,并保留 2 位小数
  180. $originalAmount = round($value[$jeKey] * $value['sczl_cl'], 2);
  181. $info = ["惩罚:$originalAmount"];
  182. // 机长(sczl_je1)超过 1000,固定扣除 1000
  183. if ($i == 1 && $originalAmount > 1000) {
  184. $info[] = "封顶:1000";
  185. }
  186. // 组员(sczl_je2, sczl_je3, sczl_je4)超过 500,固定扣除 500
  187. elseif ($i > 1 && $originalAmount > 500) {
  188. $info[] = "封顶:500";
  189. }
  190. // 用 `implode()` 拼接成字符串,确保格式整洁
  191. $rows[$key][$bhKey] .= "(" . implode(" | ", $info) . ")";
  192. }
  193. }
  194. /*
  195. * 奖励金额人员规则
  196. */
  197. // 计算有效奖励人数和总奖励金额
  198. $validCount = 0;
  199. $totalJLAmt = 0;
  200. // 先计算总奖励金额,并统计有值的奖励人数
  201. for ($i = 1; $i <= 4; $i++) {
  202. $jlKey = "JL_Je{$i}";
  203. if (!empty($value[$jlKey]) && $value[$jlKey] > 0) {
  204. $totalJLAmt += $value[$jlKey]; // 累加奖励金额
  205. $validCount++; // 统计有值的奖励人数
  206. }
  207. }
  208. // 计算平分后的奖励金额
  209. if ($validCount > 0) {
  210. // 总金额 * 系数,并保留两位小数
  211. $totalJLAmt = round($totalJLAmt * $value['sczl_cl'], 2);
  212. if ($totalJLAmt > 200) {
  213. // 超过 200,按 200 平分,并保留 2 位小数
  214. $distributedAmount = round(200 / $validCount, 2);
  215. } else {
  216. // 没超过 200,按实际金额平分,并保留 2 位小数
  217. $distributedAmount = round($totalJLAmt / $validCount, 2);
  218. }
  219. } else {
  220. $distributedAmount = 0;
  221. }
  222. for ($i = 1; $i <= 4; $i++) {
  223. // 奖励人员编号
  224. $jlbhKey = "JL_bh{$i}";
  225. // 奖励金额
  226. $jlKey = "JL_Je{$i}";
  227. // 只有当编号不为空,并且有奖励金额时才计算
  228. if (!empty($rows[$key][$jlbhKey]) && $value[$jlKey] > 0) {
  229. // 计算个人原始奖励金额,并保留 2 位小数
  230. $originalAmount = round($value[$jlKey] * $value['sczl_cl'], 2);
  231. $info = ["奖励:$originalAmount"];
  232. // 只有当总奖励金额超过 200 时,才显示封顶金额
  233. if ($totalJLAmt > 200) {
  234. $info[] = "封顶:$distributedAmount";
  235. }
  236. // 用 `implode()` 拼接成字符串,确保格式整洁
  237. $rows[$key][$jlbhKey] .= "(" . implode(" | ", $info) . ")";
  238. }
  239. }
  240. // /*
  241. // * 惩罚金额人员规则
  242. // * 1、如果惩罚金额【机长是sczl_je1】当天超过1000,【组员是sczl_je2、sczl_je3、sczl_je4】当天超过500
  243. // * 2、则机长显示1000、组员显示500(列如:机长(1000),组员(500)格式)
  244. // */
  245. // for ($i = 1; $i <= 4; $i++) {
  246. // //惩罚人员编号
  247. // $bhKey = "sczl_bh{$i}";
  248. // // 惩罚金额
  249. // $jeKey = "sczl_je{$i}";
  250. // // 如果人员编号不为空,且惩罚金额大于 0,则进行计算
  251. // if (!empty($rows[$key][$bhKey]) && $value[$jeKey] > 0) {
  252. // // 计算原始惩罚金额
  253. // $originalAmount = $value[$jeKey] * $value['sczl_cl'];
  254. // // 初始化扣除值为空
  255. // $deductedAmount = '';
  256. // // 机长(sczl_je1)超过 1000,固定扣除 1000
  257. // if ($i == 1 && $originalAmount > 1000) {
  258. // $deductedAmount = "(-1000)";
  259. // }
  260. // // 组员(sczl_je2, sczl_je3, sczl_je4)超过 500,固定扣除 500
  261. // elseif ($i > 1 && $originalAmount > 500) {
  262. // $deductedAmount = "(-500)";
  263. // }
  264. // // 拼接格式:原来的数值(超过的固定值),只有超过时才显示扣除值
  265. // $rows[$key][$bhKey] .= "({$originalAmount}){$deductedAmount}";
  266. // }
  267. // }
  268. //
  269. //
  270. // /*
  271. // * 奖励金额人员规则
  272. // */
  273. // // 计算有效奖励人数和总奖励金额
  274. // $validCount = 0;
  275. // $totalJLAmt = 0;
  276. //
  277. // // 先计算总奖励金额,并统计有值的奖励人数
  278. // for ($i = 1; $i <= 4; $i++) {
  279. // $jlKey = "JL_Je{$i}";
  280. // if (!empty($value[$jlKey]) && $value[$jlKey] > 0) {
  281. // $totalJLAmt += $value[$jlKey]; // 累加奖励金额
  282. // $validCount++; // 统计有值的奖励人数
  283. // }
  284. // }
  285. //
  286. // // 计算平分后的奖励金额
  287. // if ($validCount > 0) {
  288. // // 总金额 * 系数
  289. // $totalJLAmt *= $value['sczl_cl'];
  290. // if ($totalJLAmt > 200) {
  291. // // 超过 200,按 200 平分并四舍五入
  292. // $distributedAmount = round(200 / $validCount,2);
  293. // } else {
  294. // // 没超过 200,按实际金额平分并四舍五入
  295. // $distributedAmount = round($totalJLAmt / $validCount,2);
  296. // }
  297. // } else {
  298. // $distributedAmount = 0;
  299. // }
  300. // for ($i = 1; $i <= 4; $i++) {
  301. // // 奖励人员编号
  302. // $jlbhKey = "JL_bh{$i}";
  303. // // 奖励金额
  304. // $jlKey = "JL_Je{$i}";
  305. // // 只有当编号不为空,并且有奖励金额时才计算
  306. // if (!empty($rows[$key][$jlbhKey]) && $value[$jlKey] > 0) {
  307. // // 个人原始奖励金额
  308. // $originalAmount = $value[$jlKey] * $value['sczl_cl'];
  309. //
  310. // // 未超过200,只显示原始金额
  311. // if ($totalJLAmt <= 200) {
  312. // $rows[$key][$jlbhKey] .= "({$originalAmount})";
  313. // } else {
  314. // // 超过200,显示原始金额和分摊金额
  315. // $rows[$key][$jlbhKey] .= "({$originalAmount})({$distributedAmount})";
  316. // }
  317. // }
  318. // }
  319. // 移除 sczl_yjno 字段
  320. unset($rows[$key]['sczl_yjno']);
  321. }
  322. $data = [
  323. 'total' => $total,
  324. 'rows' => $rows,
  325. ];
  326. $this->success('成功', $data);
  327. }
  328. // public function getList()
  329. // {
  330. // if(!$this->request->isGet()){
  331. // $this->error('请求方式错误');
  332. // }
  333. // $req = $this->request->param();
  334. // $rq = $req['date'];
  335. // $page = 1;
  336. // $limit = 15;
  337. // if (isset($req['page']) && !empty($req['page'])) $page = $req['page'];
  338. // if (isset($req['limit']) && !empty($req['limit'])) $limit = $req['limit'];
  339. // $date = substr($req['date'],0,10);
  340. // $req['date'] = str_replace('.','-',$date);
  341. // $where = [];
  342. // if (isset($req['date']) && !empty($req['date'])){
  343. // if (preg_match('/[\x{4e00}-\x{9fa5}]/u', $rq)>0){
  344. // $where['sys_rq'] = ['LIKE',$req['date'].'%'];
  345. // }else{
  346. // $where['sczl_rq'] = ['LIKE',$req['date'].'%'];
  347. // }
  348. //
  349. // }else{
  350. // $this->error('参数错误');
  351. // }
  352. // $res = db()->table('db_大废品')
  353. // ->field('sczl_gdbh, LEFT(sczl_rq, 10) as sczl_rq, rtrim(sczl_numDesc) as sczl_numDesc, sczl_ls, sczl_yjno,
  354. // rtrim(责任部门) as 责任部门,sczl_cl,
  355. // rtrim(sczl_fplxA) as sczl_fplxA, sczl_fplxB, jl_jtbh as Jl_bzdh, JL_bh1,
  356. // sczl_jtbh as sczl_bzdh, sczl_bh1, sczl_je1, sczl_bh2, sczl_je2, sczl_bh3,sczl_bh4, sczl_je3,sczl_je4,rtrim(sys_id) as sys_id, sys_rq, UniqId')
  357. // ->where('sczl_gdbh',$req['date'])
  358. // ->order('UniqId desc')
  359. // ->page($page,$limit)
  360. // ->select();
  361. // if($res){
  362. // $rows=$res;
  363. // $total = db()->table('db_大废品')->where('sczl_gdbh',$req['date'])->count();;
  364. // }else{
  365. // $rows = db()->table('db_大废品')
  366. // ->field('sczl_gdbh, LEFT(sczl_rq, 10) as sczl_rq, rtrim(sczl_numDesc) as sczl_numDesc, sczl_ls, sczl_yjno,
  367. // rtrim(责任部门) as 责任部门, sczl_cl,
  368. // rtrim(sczl_fplxA) as sczl_fplxA, sczl_fplxB, jl_jtbh as Jl_bzdh, JL_bh1,
  369. // sczl_jtbh as sczl_bzdh, sczl_bh1, sczl_je1, sczl_bh2, sczl_je2, sczl_bh3,sczl_bh4, sczl_je3,sczl_je4, rtrim(sys_id) as sys_id, sys_rq, UniqId')
  370. // ->where($where)
  371. // ->order('UniqId desc')
  372. // ->page($page,$limit)
  373. // ->select();
  374. // $total = db()->table('db_大废品')->where($where)->count();
  375. // }
  376. // $gd = db()->table('工单_印件资料')->column('Yj_Gdbh, yj_yjmc');
  377. // $rs = db()->table('人事_基本资料')->where('员工姓名','<>','通用编号')->column('员工编号, 员工姓名');
  378. // foreach ($rows as $key=>$value) {
  379. // $rows[$key]['yj_yjmc'] = array_key_exists($value['sczl_gdbh'],$gd) ? sprintf("%02d", $value['sczl_yjno']).'-'.trim($gd[$value['sczl_gdbh']]) : '';
  380. // $rows[$key]['JL_bh1'] = array_key_exists($value['JL_bh1'],$rs) ? trim($rs[$value['JL_bh1']]) : '';
  381. // $rows[$key]['sczl_bh1'] = array_key_exists($value['sczl_bh1'],$rs) ? trim($rs[$value['sczl_bh1']]) : '';
  382. // $rows[$key]['sczl_bh2'] = array_key_exists($value['sczl_bh2'],$rs) ? trim($rs[$value['sczl_bh2']]) : '';
  383. // $rows[$key]['sczl_bh3'] = array_key_exists($value['sczl_bh3'],$rs) ? trim($rs[$value['sczl_bh3']]) : '';
  384. // $rows[$key]['sczl_bh4'] = array_key_exists($value['sczl_bh4'],$rs) ? trim($rs[$value['sczl_bh4']]) : '';
  385. // $rows[$key]['sczl_fplxB'] = $value['sczl_fplxB'] == 1 ? '制程废' : '';
  386. // if ($rows[$key]['sczl_bh1'] != '' && $value['sczl_je1'] > 0){
  387. // $number = $value['sczl_je1']*$value['sczl_cl'];
  388. // if ($number > 200){
  389. // $number = 200;
  390. // }
  391. // $rows[$key]['sczl_bh1'] = $rows[$key]['sczl_bh1'].'(-'.$number.')';
  392. // }
  393. // if ($rows[$key]['sczl_bh2'] != '' && $value['sczl_je2'] > 0){
  394. // $number = $value['sczl_je1']*$value['sczl_cl'];
  395. // if ($number > 200){
  396. // $number = 200;
  397. // }
  398. // $rows[$key]['sczl_bh2'] = $rows[$key]['sczl_bh2'].'(-'.$number.')';
  399. // }
  400. // if ($rows[$key]['sczl_bh3'] != '' && $value['sczl_je3'] > 0){
  401. // $number = $value['sczl_je1']*$value['sczl_cl'];
  402. // if ($number > 200){
  403. // $number = 200;
  404. // }
  405. // $rows[$key]['sczl_bh3'] = $rows[$key]['sczl_bh3'].'(-'.$number.')';
  406. // }
  407. // if ($rows[$key]['sczl_bh4'] != '' && $value['sczl_je4'] > 0){
  408. // $number = $value['sczl_je1']*$value['sczl_cl'];
  409. // if ($number > 200){
  410. // $number = 200;
  411. // }
  412. // $rows[$key]['sczl_bh4'] = $rows[$key]['sczl_bh4'].'(-'.$number.')';
  413. // }
  414. // unset($rows[$key]['sczl_yjno']);
  415. // }
  416. // $data = [
  417. // 'total' => $total,
  418. // 'rows' => $rows,
  419. // ];
  420. // $this->success('成功',$data);
  421. // }
  422. /**
  423. * 获取工序大废品惩奖信息
  424. * @ApiMethod (GET)
  425. * @param string $UniqId UniqId
  426. */
  427. public function getInfo()
  428. {
  429. //get请求
  430. if(!$this->request->isGet()){
  431. $this->error('请求方式错误');
  432. }
  433. $req = $this->request->param();
  434. if (isset($req['UniqId']) && !empty($req['UniqId'])){
  435. $UniqId = $req['UniqId'];
  436. }else{
  437. $this->error('参数错误');
  438. }
  439. $rows = db()->table('db_大废品')->alias('d')
  440. ->field('sczl_gdbh,rtrim(g.Gd_cpmc) as Gd_cpmc,sczl_yjno,rtrim(yj.yj_yjmc) as yj_yjmc,
  441. rtrim(sczl_gxmc) as sczl_gxmc,sczl_gxh,rtrim(sczl_numDesc) as sczl_numDesc,LEFT(sczl_rq, 10)
  442. as sczl_rq,sczl_cl,sczl_ls,rtrim(sczl_fplxA) as sczl_fplxA,sczl_fplxB,rtrim(责任部门) as 责任部门,
  443. rtrim(jl_bzdh) as Jl_bzdh,jl_jtbh,JL_bh1,JL_bh2,JL_bh3,JL_bh4,JL_bh5,JL_bh6,JL_bh7,JL_bh8,JL_bh9,
  444. rtrim(jl1.员工姓名) as jlname1,rtrim(jl2.员工姓名) as jlname2,rtrim(jl3.员工姓名) as jlname3
  445. ,rtrim(jl4.员工姓名) as jlname4,rtrim(jl5.员工姓名) as jlname5,rtrim(jl6.员工姓名) as jlname6
  446. ,rtrim(jl7.员工姓名) as jlname7,rtrim(jl8.员工姓名) as jlname8,rtrim(jl9.员工姓名) as jlname9
  447. ,JL_Je1,JL_Je2,JL_Je3,JL_Je4,JL_Je5,JL_Je6,JL_Je7,JL_Je8,JL_Je9,rtrim(sczl_bzdh) as sczl_bzdh,
  448. sczl_jtbh,sczl_bh1,sczl_bh2,sczl_bh3,sczl_bh4,sczl_bh5,sczl_bh6,sczl_bh7,sczl_bh8,sczl_bh9,
  449. rtrim(jl_bzdh) as Jl_bzdh,jl_jtbh,JL_bh1,JL_bh2,JL_bh3,JL_bh4,JL_bh5,JL_bh6,JL_bh7,JL_bh8,JL_bh9,
  450. rtrim(zr1.员工姓名) as zrname1,rtrim(zr2.员工姓名) as zrname2,rtrim(zr3.员工姓名) as zrname3
  451. ,rtrim(zr4.员工姓名) as zrname4,rtrim(zr5.员工姓名) as zrname5,rtrim(zr6.员工姓名) as zrname6
  452. ,rtrim(zr7.员工姓名) as zrname7,rtrim(zr8.员工姓名) as zrname8,rtrim(zr9.员工姓名) as zrname9
  453. ,sczl_je1,sczl_je2,sczl_je3,sczl_je4,sczl_je5,sczl_je6,sczl_je7,sczl_je8,sczl_je9')
  454. ->join('工单_基本资料 g','g.Gd_gdbh=db_大废品.sczl_gdbh')
  455. ->join('工单_印件资料 yj','yj.Yj_Gdbh=db_大废品.sczl_gdbh','LEFT')
  456. ->join('人事_基本资料 jl1','jl1.员工编号=db_大废品.JL_bh1','LEFT')
  457. ->join('人事_基本资料 jl2','jl2.员工编号=db_大废品.JL_bh2','LEFT')
  458. ->join('人事_基本资料 jl3','jl3.员工编号=db_大废品.JL_bh3','LEFT')
  459. ->join('人事_基本资料 jl4','jl4.员工编号=db_大废品.JL_bh4','LEFT')
  460. ->join('人事_基本资料 jl5','jl5.员工编号=db_大废品.JL_bh5','LEFT')
  461. ->join('人事_基本资料 jl6','jl6.员工编号=db_大废品.JL_bh6','LEFT')
  462. ->join('人事_基本资料 jl7','jl7.员工编号=db_大废品.JL_bh7','LEFT')
  463. ->join('人事_基本资料 jl8','jl8.员工编号=db_大废品.JL_bh8','LEFT')
  464. ->join('人事_基本资料 jl9','jl9.员工编号=db_大废品.JL_bh9','LEFT')
  465. ->join('人事_基本资料 zr1','zr1.员工编号=db_大废品.sczl_bh1','LEFT')
  466. ->join('人事_基本资料 zr2','zr2.员工编号=db_大废品.sczl_bh2','LEFT')
  467. ->join('人事_基本资料 zr3','zr3.员工编号=db_大废品.sczl_bh3','LEFT')
  468. ->join('人事_基本资料 zr4','zr4.员工编号=db_大废品.sczl_bh4','LEFT')
  469. ->join('人事_基本资料 zr5','zr5.员工编号=db_大废品.sczl_bh5','LEFT')
  470. ->join('人事_基本资料 zr6','zr6.员工编号=db_大废品.sczl_bh6','LEFT')
  471. ->join('人事_基本资料 zr7','zr7.员工编号=db_大废品.sczl_bh7','LEFT')
  472. ->join('人事_基本资料 zr8','zr8.员工编号=db_大废品.sczl_bh8','LEFT')
  473. ->join('人事_基本资料 zr9','zr9.员工编号=db_大废品.sczl_bh9','LEFT')
  474. ->where('d.UniqId',$UniqId)->limit(1)->select();
  475. $this->success('成功',$rows);
  476. }
  477. /**
  478. * 工单编号获取
  479. * @return void
  480. * @throws \think\exception\DbException
  481. * @throws db\exception\DataNotFoundException
  482. * @throws db\exception\ModelNotFoundException
  483. */
  484. public function JunkWorkOrderList()
  485. {
  486. if ($this->request->isGet() === false){
  487. $this->error('非法请求');
  488. }
  489. $params = $this->request->param();
  490. if (empty($params['search'])){
  491. $this->error('参数错误');
  492. }
  493. $list = \db('工单_基本资料')
  494. ->field('rtrim(Gd_gdbh) as 工单编号,rtrim(成品名称) as 产品名称')
  495. ->where('Gd_gdbh','like','%'.$params['search'].'%')
  496. ->select();
  497. if (empty($list)){
  498. $this->success('未找到工单信息');
  499. }
  500. $this->success('成功',$list);
  501. }
  502. /**
  503. * 印件编号获取
  504. * @return void
  505. * @throws \think\exception\DbException
  506. * @throws db\exception\DataNotFoundException
  507. * @throws db\exception\ModelNotFoundException
  508. */
  509. public function PrintCodeList()
  510. {
  511. if ($this->request->isGet() === false){
  512. $this->error('非法请求');
  513. }
  514. $param = $this->request->param();
  515. if (empty($param['workorder'])){
  516. $this->error('参数错误');
  517. }
  518. $list = \db('工单_印件资料')
  519. ->field('rtrim(yj_Yjno) as 印件号,rtrim(yj_yjmc) as 印件名称')
  520. ->where('Yj_Gdbh',$param['workorder'])
  521. ->select();
  522. if (empty($list)){
  523. $this->success('未找到该工单印件');
  524. }
  525. $this->success('成功',$list);
  526. }
  527. /**
  528. * 工单工序获取
  529. * @return void
  530. * @throws \think\exception\DbException
  531. * @throws db\exception\DataNotFoundException
  532. * @throws db\exception\ModelNotFoundException
  533. */
  534. public function ProcessList()
  535. {
  536. if ($this->request->isGet() === false){
  537. $this->error('非法请求');
  538. }
  539. $param = $this->request->param();
  540. if (empty($param['workorder']) || empty($param['yjno'])){
  541. $this->error('参数错误');
  542. }
  543. $list = \db('工单_工艺资料')
  544. ->field('rtrim(Gy0_gxh) as gxh,rtrim(Gy0_gxmc) as gxmc')
  545. ->where('Gy0_gdbh',$param['workorder'])
  546. ->where('Gy0_yjno',$param['yjno'])
  547. ->select();
  548. if (empty($list)){
  549. $this->success('未找到该工单工艺');
  550. }
  551. $data = [];
  552. foreach ($list as $key=>$value){
  553. if ((int)$value['gxh'] < 10){
  554. $value['gxh'] = '0'.$value['gxh'];
  555. }
  556. $data[$key] = $value['gxh'].'-'.$value['gxmc'];
  557. }
  558. $this->success('成功',$data);
  559. }
  560. /**
  561. * 机台编号获取
  562. * @return void
  563. * @throws \think\exception\DbException
  564. * @throws db\exception\DataNotFoundException
  565. * @throws db\exception\ModelNotFoundException
  566. */
  567. public function MachineList()
  568. {
  569. if ($this->request->isGet() === false){
  570. $this->error('非法请求');
  571. }
  572. $param = $this->request->param();
  573. $list = \db('设备_产量计酬')
  574. ->alias('a')
  575. ->join('人事_基本资料 b1','a.sczl_bh1 = b1.员工编号','left')
  576. ->join('人事_基本资料 b2','a.sczl_bh2 = b2.员工编号','left')
  577. ->join('人事_基本资料 b3','a.sczl_bh3 = b3.员工编号','left')
  578. ->join('人事_基本资料 b4','a.sczl_bh4 = b4.员工编号','left')
  579. ->join('人事_基本资料 b5','a.sczl_bh5 = b5.员工编号','left')
  580. ->join('人事_基本资料 b6','a.sczl_bh6 = b6.员工编号','left')
  581. ->join('人事_基本资料 b7','a.sczl_bh7 = b7.员工编号','left')
  582. ->join('人事_基本资料 b8','a.sczl_bh8 = b8.员工编号','left')
  583. ->join('人事_基本资料 b9','a.sczl_bh9 = b9.员工编号','left')
  584. ->join('人事_基本资料 b10','a.sczl_bh10 = b10.员工编号','left')
  585. ->field('a.sczl_gxmc as 工序名称,a.sczl_jtbh as 机台编号,a.sczl_bh1 as 员工编号1,rtrim(b1.员工姓名) as 员工姓名1
  586. ,a.sczl_bh2 as 员工编号2,rtrim(b2.员工姓名) as 员工姓名2,a.sczl_bh3 as 员工编号3,rtrim(b3.员工姓名) as 员工姓名3
  587. ,a.sczl_bh4 as 员工编号4,rtrim(b4.员工姓名) as 员工姓名4,a.sczl_bh5 as 员工编号5,rtrim(b5.员工姓名) as 员工姓名5
  588. ,a.sczl_bh6 as 员工编号6,rtrim(b6.员工姓名) as 员工姓名6,a.sczl_bh7 as 员工编号7,rtrim(b7.员工姓名) as 员工姓名7
  589. ,a.sczl_bh8 as 员工编号8,rtrim(b8.员工姓名) as 员工姓名8,a.sczl_bh9 as 员工编号9,rtrim(b9.员工姓名) as 员工姓名9
  590. ,a.sczl_bh10 as 员工编号10,rtrim(b10.员工姓名) as 员工姓名10')
  591. ->where('a.sczl_gdbh',$param['gdbh'])
  592. ->where('a.sczl_yjno',$param['yjno'])
  593. ->where('a.sczl_bzdh','like',substr($param['bzdh'],0,1).'%')
  594. ->group('机台编号,员工编号1,员工编号2,员工编号3,员工编号4,员工编号5,员工编号6,员工编号7,员工编号8,员工编号9,员工编号10')
  595. ->select();
  596. // $list = \db('设备_基本资料')
  597. // ->field('rtrim(设备编号) as 设备编号')
  598. // ->where('sys_sbID','<>','')
  599. // ->select();
  600. if (empty($list)){
  601. $this->success('未找到机台编号');
  602. }
  603. $this->success('成功',$list);
  604. }
  605. /**
  606. * 机台班组获取
  607. * @return void
  608. * @throws \think\exception\DbException
  609. * @throws db\exception\DataNotFoundException
  610. * @throws db\exception\ModelNotFoundException
  611. */
  612. public function MachineClassList()
  613. {
  614. if ($this->request->isGet() === false){
  615. $this->error('非法请求');
  616. }
  617. $param = $this->request->param();
  618. if (empty($param['machine'])){
  619. $this->error('参数错误');
  620. }
  621. $list = \db('设备_班组资料')
  622. ->where('sczl_jtbh',$param['machine'])
  623. ->field('rtrim(sczl_bh1) as bh1,rtrim(sczl_bh2) as bh2,rtrim(sczl_bh3) as bh3,
  624. rtrim(sczl_bh4) as bh4,rtrim(sczl_bh5) as bh5,rtrim(sczl_bh6) as bh6,
  625. rtrim(sczl_bh7) as bh7,rtrim(sczl_bh8) as bh8,rtrim(sczl_bh9) as bh9,
  626. rtrim(sczl_bh10) as bh10,rtrim(sczl_bzdh) as 班组代号')
  627. ->select();
  628. if (empty($list)){
  629. $this->success('未找到该机台班组');
  630. }
  631. foreach ($list as $key=>$value){
  632. for ($i=1;$i<=10;$i++){
  633. if (!empty($value['bh'.$i])){
  634. $name = \db('人事_基本资料')->where('员工编号',$value['bh'.$i])->field('rtrim(员工姓名) as name')->find();
  635. if (isset($name['name'])){
  636. $list[$key]['组员'.$i] = [
  637. '编号' => $value['bh'.$i],
  638. '姓名' => $name['name']
  639. ];
  640. }
  641. }else{
  642. $list[$key]['组员'.$i] = [
  643. '编号' => '',
  644. '姓名' => ''
  645. ];
  646. }
  647. unset($list[$key]['bh'.$i]);
  648. }
  649. }
  650. $this->success('成功',$list);
  651. }
  652. /**
  653. * 大废品数据修改
  654. * @return void
  655. * @throws \think\Exception
  656. * @throws \think\exception\PDOException
  657. * @throws db\exception\BindParamException
  658. */
  659. public function JunkDetailEdit()
  660. {
  661. // 判断请求方式是否为 POST
  662. if (Request::instance()->isPost() === false) {
  663. $this->error('非法请求');
  664. }
  665. // 获取请求参数
  666. $param = Request::instance()->post();
  667. if (empty($param['sczl_gdbh']) || empty($param['UniqId'])) {
  668. $this->error('参数错误');
  669. }
  670. $param['mod_rq'] = date('Y-m-d H:i:s', time());
  671. // $data = $param['sczl_rq'].' 00:00:00';
  672. // 奖励班组封顶限制【记录是否存在超限的标志】
  673. // $over_limit = false;
  674. // 遍历 JL_bh1 ~ JL_bh10,检查当天和本月金额限制
  675. // for ($i = 1; $i <= 10; $i++) {
  676. // $jl_bh = 'JL_bh' . $i; // 获取 JL_bh1 到 JL_bh10
  677. // $jl_je = 'JL_Je' . $i; // 获取 JL_Je1 到 JL_Je10
  678. // if (!empty($param[$jl_bh]) && isset($param[$jl_je])) { // 确保 JL_bh 和 JL_Je 不为空
  679. // $person_id = $param[$jl_bh]; // 当前人员的 ID
  680. // $amount = $param[$jl_je]; // 当前人员的金额
  681. // // 获取当天的所有记录金额总和
  682. // $daily_total = \db('db_大废品')
  683. // ->where('sczl_rq', $data)
  684. // ->sum($jl_je);
  685. //
  686. //
  687. // $daUniqId = \db('db_大废品')
  688. // ->where('UniqId', $param['UniqId'])
  689. // ->sum($jl_je);
  690. // 将当天的金额总和与接口传过来的金额加起来
  691. // $total_amount = ($daily_total + $amount) - $daUniqId; // 假设传入的是 JL_Je1
  692. // // 检查金额是否超过 200 元
  693. // if ($total_amount > 200) {
  694. // $this->error("【{$person_id}】当天金额超限!当天金额不能超过 200 元!");
  695. // $over_limit = true;
  696. // break;
  697. // }
  698. // 获取当月的所有记录金额总和
  699. // $month = substr($data, 5, 2);
  700. // $year = substr($data, 0, 4);
  701. // $start_date = $year . '-' . $month . '-01';
  702. // $end_date = date('Y-m-t', strtotime($start_date));
  703. // $monthly_total = \db('db_大废品')
  704. // ->whereBetween('sczl_rq', [$start_date, $end_date])
  705. // ->where($jl_bh, $person_id)
  706. // ->sum($jl_je);
  707. // // 检查本月是否超过 1500 元
  708. // if ($monthly_total + $amount - $daUniqId > 1500) {
  709. // $this->error("【{$person_id}】本月金额超限!本月金额不能超过 1500 元!");
  710. // $over_limit = true;
  711. // break;
  712. // }
  713. // }
  714. // }
  715. // // 如果存在超限,停止执行
  716. // if ($over_limit) {
  717. // return;
  718. // }
  719. // 扣罚金额封顶限制
  720. // $kfover_limit = false;
  721. // // 检查 sczl_bh1 的限制(不能超过 1000 元)
  722. // if (!empty($param['sczl_bh1']) && isset($param['sczl_je1'])) {
  723. // $person_id = $param['sczl_bh1'];
  724. // $amount = $param['sczl_je1'];
  725. // // 获取该人员当天的扣罚金额总和
  726. // $daily_total = \db('db_大废品')
  727. // ->where('sczl_rq', $data)
  728. // ->where('sczl_bh1', $person_id)
  729. // ->sum('sczl_je1');
  730. //
  731. // $daUniqId = \db('db_大废品')
  732. // ->where('UniqId', $param['UniqId'])
  733. // ->sum("sczl_je1");
  734. // // 判断是否超过 1000 元
  735. // if (($daily_total + $amount) - $daUniqId > 1000) {
  736. // $this->error("【{$person_id}】当天扣罚金额超限!当天扣罚金额不能超过 1000 元!");
  737. // $kfover_limit = true;
  738. // }
  739. // }
  740. // // 遍历 sczl_bh2 ~ sczl_bh10,检查当天金额是否超过 500 元
  741. // for ($i = 2; $i <= 10; $i++) {
  742. // $sczl_bh = 'sczl_bh' . $i;
  743. // $sczl_je = 'sczl_je' . $i;
  744. // if (!empty($param[$sczl_bh]) && isset($param[$sczl_je])) {
  745. // $person_id = $param[$sczl_bh];
  746. // $amount = $param[$sczl_je];
  747. // 获取该人员当天的扣罚金额总和
  748. // $daily_total = \db('db_大废品')
  749. // ->where('sczl_rq', $data)
  750. // ->sum($sczl_je);
  751. // $daUniqId = \db('db_大废品')
  752. // ->where('UniqId', $param['UniqId'])
  753. // ->sum($sczl_je);
  754. // $total_amount = ($daily_total + $amount) - $daUniqId; // 假设传入的是 JL_Je1
  755. // // 判断是否超过 500 元
  756. // if ($total_amount > 500) {
  757. // $this->error("【{$person_id}】当天扣罚金额超限!当天扣罚金额不能超过 500 元!");
  758. // $kfover_limit = true;
  759. // break; // 如果超限,停止检查
  760. // }
  761. // }
  762. // }
  763. // // 如果超限就不插入数据
  764. // if ($kfover_limit) {
  765. // return; // 直接终止
  766. // }
  767. // 执行更新操作
  768. // unset($data['UniqId']);
  769. $sql = \db('db_大废品')
  770. ->where('UniqId', $param['UniqId'])
  771. ->fetchSql(true)
  772. ->update($param);
  773. $res = \db()->query($sql);
  774. if ($res !== false) {
  775. $this->success('修改成功');
  776. } else {
  777. $this->error('修改失败');
  778. }
  779. }
  780. /**
  781. * 大废品数据添加
  782. * @return void
  783. * @throws \think\exception\PDOException
  784. * @throws db\exception\BindParamException
  785. */
  786. public function JunkDetailAdd()
  787. {
  788. if (Request::instance()->isPost() === false) {
  789. $this->error('非法请求');
  790. }
  791. $param = Request::instance()->post();
  792. if (empty($param['sczl_gdbh'])) {
  793. $this->error('参数错误');
  794. }
  795. // 获取最后一条记录的UniqId
  796. $lastID = \db('db_大废品')->order('UniqId desc')->value('UniqId');
  797. // 设置当前时间和其他初始化数据
  798. $param['sys_rq'] = date('Y-m-d H:i:s', time());
  799. $param['mod_rq'] = '1900-01-01 00:00:00';
  800. $param['UniqId'] = $lastID + 1;
  801. // $data = $param['sczl_rq'];
  802. // //奖励班组封顶限制【记录是否存在超限的标志】
  803. // $over_limit = false;
  804. // // 遍历参数,检查每个人当天和本月的消费情况
  805. // for ($i = 1; $i <= 10; $i++) {
  806. // $jl_bh = 'JL_bh' . $i;
  807. // $jl_je = 'JL_Je' . $i;
  808. //
  809. // if (!empty($param[$jl_bh]) && isset($param[$jl_je])) {
  810. // $person_id = $param[$jl_bh];
  811. // $amount = $param[$jl_je];
  812. //
  813. // // 获取当天的所有记录金额总和
  814. // $daily_total = \db('db_大废品')
  815. // ->where('sczl_rq', $data)
  816. // ->where($jl_bh, $person_id)
  817. // ->sum($jl_je);
  818. //
  819. // // 获取当月的所有记录金额总和
  820. // $month = substr($data, 5, 2);
  821. // $year = substr($data, 0, 4);
  822. // $start_date = $year . '-' . $month . '-01';
  823. // $end_date = date('Y-m-t', strtotime($start_date));
  824. // $monthly_total = \db('db_大废品')
  825. // ->whereBetween('sczl_rq', [$start_date, $end_date])
  826. // ->where($jl_bh, $person_id)
  827. // ->sum($jl_je);
  828. // // 检查当天是否超过 200
  829. // if ($daily_total + ($amount * $param['sczl_cl']) > 200) {
  830. // $this->error("【{$person_id}】当天金额超限!当天金额不能超过200元!");
  831. // $over_limit = true;
  832. // break;
  833. // }
  834. //
  835. // // 检查本月是否超过 1500
  836. // if ($monthly_total + ($amount * $param['sczl_cl']) > 1500) {
  837. // $this->error("【{$person_id}】本月金额超限!本月金额不能超过1500元!");
  838. // $over_limit = true;
  839. // break;
  840. // }
  841. // }
  842. // }
  843. // // 如果超限就不插入数据
  844. // if ($over_limit) {
  845. // // 提示超限后停止执行
  846. // return;
  847. // }
  848. // // 记录是否存在超限
  849. // $kfover_limit = false;
  850. // // 获取 sczl_bh1 的值,并检查它是否存在
  851. // if (!empty($param['sczl_bh1']) && isset($param['sczl_je1'])) {
  852. // $person_id = $param['sczl_bh1'];
  853. // $amount = $param['sczl_je1'];
  854. //
  855. // // 获取该人员当天的扣罚金额总和
  856. // $daily_total = \db('db_大废品')
  857. // ->where('sczl_rq', $data)
  858. // ->where('sczl_bh1', $person_id)
  859. // ->sum('sczl_je1');
  860. //
  861. // // 判断是否超过 1000
  862. // if ($daily_total + ($amount * $param['sczl_cl']) > 1000) {
  863. // $this->error("【{$person_id}】当天扣罚金额超限!当天扣罚金额不能超过 1000 元!");
  864. // $kfover_limit = true;
  865. // }
  866. // }
  867. // // 遍历 sczl_bh2 ~ sczl_bh10
  868. // for ($i = 2; $i <= 10; $i++) {
  869. // $sczl_bh = 'sczl_bh' . $i;
  870. // $sczl_je = 'sczl_je' . $i;
  871. //
  872. // if (!empty($param[$sczl_bh]) && isset($param[$sczl_je])) {
  873. // $person_id = $param[$sczl_bh];
  874. // $amount = $param[$sczl_je];
  875. //
  876. // // 获取该人员当天的扣罚金额总和
  877. // $daily_total = \db('db_大废品')
  878. // ->where('sczl_rq', $data)
  879. // ->where($sczl_bh, $person_id)
  880. // ->sum($sczl_je);
  881. //
  882. // // 判断是否超过 500
  883. // if ($daily_total + ($amount * $param['sczl_cl']) > 500) {
  884. // $this->error("【{$person_id}】当天扣罚金额超限!当天扣罚金额不能超过 500 元!");
  885. // $kfover_limit = true;
  886. // break; // 只要有一个超限就停止检查
  887. // }
  888. // }
  889. // }
  890. // // 如果超限就不插入数据
  891. // if ($kfover_limit) {
  892. // return; // 直接终止
  893. // }
  894. // 插入数据
  895. $sql = \db('db_大废品')->fetchSql(true)->insert($param);
  896. $res = \db()->query($sql);
  897. if ($res !== false) {
  898. $this->success('添加成功');
  899. } else {
  900. $this->error('失败');
  901. }
  902. }
  903. /**
  904. * 大废品数据删除
  905. * @return void
  906. * @throws \think\Exception
  907. * @throws \think\exception\PDOException
  908. */
  909. public function JunkDetailDel()
  910. {
  911. if ($this->request->isGet() === false){
  912. $this->error('非法请求');
  913. }
  914. $param = $this->request->param();
  915. if (empty($param['UniqId'])){
  916. $this->error('参数错误');
  917. }
  918. $idList = explode(',',$param['UniqId']);
  919. $res = \db('db_大废品')
  920. ->whereIn('UniqId',$idList)
  921. ->delete();
  922. if ($res !== false){
  923. $this->success('删除成功');
  924. }else{
  925. $this->error('失败');
  926. }
  927. }
  928. }