AmsSaleOrderController.java 68 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441
  1. package com.steerinfo.dil.controller;
  2. import com.alibaba.druid.support.json.JSONUtils;
  3. import com.steerinfo.dil.feign.ColumnDataFeign;
  4. import com.steerinfo.dil.feign.ESFeign;
  5. import com.steerinfo.dil.feign.JoinFeign;
  6. import com.steerinfo.dil.mapper.AmsDispatchSaleOrderMapper;
  7. import com.steerinfo.dil.model.AmsDispatchSaleOrder;
  8. import com.steerinfo.dil.service.IAmsSaleOrderService;
  9. import com.steerinfo.dil.service.impl.AmsDispatchSaleOrderServiceImpl;
  10. import com.steerinfo.dil.service.impl.AmsSaleOrderCarrierServiceImpl;
  11. import com.steerinfo.dil.service.impl.AmsSaleOrderMaterialServiceImpl;
  12. import com.steerinfo.dil.util.*;
  13. import com.steerinfo.framework.controller.RESTfulResult;
  14. import com.steerinfo.framework.service.pagehelper.PageHelper;
  15. import io.swagger.annotations.*;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.transaction.annotation.Transactional;
  18. import org.springframework.web.bind.annotation.*;
  19. import java.math.BigDecimal;
  20. import java.text.ParseException;
  21. import java.text.SimpleDateFormat;
  22. import java.util.*;
  23. //import com.sun.org.apache.bcel.internal.generic.IF_ACMPEQ;
  24. /**
  25. * AmsSaleOrder RESTful接口:
  26. * @author generator
  27. * @version 1.0-SNAPSHORT 2021-09-06 07:10
  28. * 类描述
  29. * 修订历史:
  30. * 日期:2021-09-06
  31. * 作者:generator
  32. * 参考:
  33. * 描述:AmsSaleOrder RESTful接口
  34. * @see null
  35. * @Copyright 湖南视拓信息技术股份有限公司. All rights reserved.
  36. */
  37. @RestController
  38. @RequestMapping("/${api.version}/amssaleorders")
  39. public class AmsSaleOrderController extends BaseRESTfulController {
  40. @Autowired
  41. IAmsSaleOrderService amsSaleOrderService;
  42. @Autowired
  43. AmsSaleOrderMaterialServiceImpl amsSaleOrderMaterialService;
  44. @Autowired
  45. AmsDispatchSaleOrderServiceImpl amsDispatchSaleOrderService;
  46. @Autowired
  47. ColumnDataFeign columnDataFeign;
  48. @Autowired
  49. AmsDispatchSaleOrderMapper amsDispatchSaleOrderMapper;
  50. @Autowired
  51. ColumnDataUtil columnDataUtil;
  52. @Autowired
  53. ESFeign esFeign;
  54. @Autowired
  55. AmsSaleOrderCarrierServiceImpl amsSaleOrderCarrierService;
  56. @Autowired
  57. EASTestUtil easTestUtil;
  58. @Autowired
  59. EASUtil easUtil;
  60. @Autowired
  61. JoinFeign joinFeign;
  62. @Autowired
  63. EASDeleteUtil easDeleteUtil;
  64. @Autowired
  65. EASCapacityTestUtil easCapacityTestUtil;
  66. private final SimpleDateFormat sdfDateTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  67. @ApiOperation(value="查询未上报销售订单信息")
  68. @ApiImplicitParams({
  69. @ApiImplicitParam(name = "apiId(98)", value = "表头", required = false, dataType = "Interger")
  70. })
  71. @PostMapping("/getSaleOrderInfo")
  72. public RESTfulResult getSaleOrderInfo(@RequestBody(required=false) Map<String,Object> mapValue,
  73. Integer apiId,
  74. Integer pageNum,
  75. Integer pageSize){
  76. PageHelper.startPage(pageNum,pageSize);
  77. List<Map<String, Object>> amsSaleOrder1 = amsSaleOrderService.getSaleOrderInfo(mapValue);
  78. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,amsSaleOrder1);
  79. return success(pageList);
  80. }
  81. @ApiOperation(value="查询已上报销售订单信息")
  82. @ApiImplicitParams({
  83. @ApiImplicitParam(name = "apiId(98)", value = "表头", required = false, dataType = "Interger")
  84. })
  85. @PostMapping("/getSaleOrderReported")
  86. public RESTfulResult getSaleOrderReported(@RequestBody(required=false) Map<String,Object> mapValue,
  87. Integer apiId,
  88. Integer pageNum,
  89. Integer pageSize){
  90. PageHelper.startPage(pageNum,pageSize);
  91. List<Map<String, Object>> amsSaleOrder1 = amsSaleOrderService.getSaleOrderReported(mapValue);
  92. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,amsSaleOrder1);
  93. return success(pageList);
  94. }
  95. @ApiOperation(value="查询财务已审批销售订单信息")
  96. @ApiImplicitParams({
  97. @ApiImplicitParam(name = "apiId(105)", value = "表头", required = false, dataType = "Interger")
  98. })
  99. @PostMapping("/getAmsSaleOrderApproved")
  100. public RESTfulResult getAmsSaleOrderApproved(@RequestBody(required=false) Map<String,Object> mapValue,
  101. Integer apiId,
  102. Integer pageNum,
  103. Integer pageSize){
  104. PageHelper.startPage(pageNum,pageSize);
  105. List<Map<String, Object>> amsSaleOrder1 = amsSaleOrderService.getAmsSaleOrderApproved(mapValue);
  106. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,amsSaleOrder1);
  107. return success(pageList);
  108. }
  109. @ApiOperation(value="根据销售订单号查询销售订单详细信息")
  110. @ApiImplicitParams({
  111. @ApiImplicitParam(name = "apiId(100)", value = "表头", required = false, dataType = "Interger")
  112. })
  113. @PostMapping("/getSaleOrderDetail")
  114. public RESTfulResult getSaleOrderDetail(BigDecimal saleOrderId,@RequestBody(required=false) Map<String,Object> mapValue,
  115. Integer apiId,
  116. Integer pageNum,
  117. Integer pageSize){
  118. if (mapValue == null) {
  119. mapValue = new HashMap<>();
  120. }
  121. mapValue.put("saleOrderId",saleOrderId);
  122. PageHelper.startPage(pageNum,pageSize);
  123. List<Map<String, Object>> amsSaleOrderDetail1 = amsSaleOrderService.getSaleOrderDetail(mapValue);
  124. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,amsSaleOrderDetail1);
  125. return success(pageList);
  126. }
  127. /**
  128. * 上传销售订单
  129. * @param saleOrderId
  130. * @return
  131. */
  132. @ApiOperation(value="上传销售订单")
  133. @ApiImplicitParams({
  134. @ApiImplicitParam(name = "saleOrderId", value = "销售订单ID", required = false, dataType = "java.math.BigDecimal")
  135. })
  136. @PostMapping(value = "/uploadSaleOrder")
  137. public RESTfulResult uploadSaleOrder(@RequestParam BigDecimal saleOrderId) throws Exception {
  138. int i = amsSaleOrderService.uploadSaleOrder(saleOrderId);
  139. return success(i);
  140. }
  141. /**
  142. * 新增销售订单
  143. * @param map
  144. * @return
  145. */
  146. @ApiOperation(value="新增销售订单")
  147. @ApiImplicitParams({
  148. @ApiImplicitParam(name = "amsSaleOrder", value = "销售订单对象", required = false, dataType = "AmsSaleOrder")
  149. })
  150. @PostMapping(value = "/addAmsSaleOrder")
  151. public RESTfulResult addAmsSaleOrder(@RequestBody(required = false) Map<String, Object> map) throws ParseException {
  152. int i = amsSaleOrderService.addAmsSaleOrder(map);
  153. return success(i);
  154. }
  155. /**
  156. * 通过主键渲染销售订单信息
  157. * @param saleOrderId
  158. * @return
  159. */
  160. @ApiOperation(value="通过主键渲染销售订单信息")
  161. @ApiImplicitParams({
  162. @ApiImplicitParam(name = "saleOrderId", value = "主键Id", required = false, dataType = "java.math.BigDecimal")
  163. })
  164. @PostMapping(value = "/getAmsSaleOrderBySaleOrderId")
  165. public RESTfulResult getAmsSaleOrderBySaleOrderId(@RequestParam BigDecimal saleOrderId){
  166. Map<String, Object> maps = amsSaleOrderService.selectInfoBySaleOrderId(saleOrderId);
  167. List<Map<String, Object>> maps1= amsSaleOrderService.selectMaterialInfoBySaleOrderId(saleOrderId);
  168. Map map=new HashMap();
  169. map.put("maps",maps);
  170. map.put("maps1",maps1);
  171. return success(map);
  172. }
  173. /**steelMaterialId
  174. * 通过主键修改销售订单
  175. * @param map
  176. * @return
  177. */
  178. @ApiOperation(value="通过主键修改销售订单")
  179. @ApiImplicitParams({
  180. @ApiImplicitParam(name = "amsSaleOrder", value = "销售订单对象", required = false, dataType = "AmsSaleOrder")
  181. })
  182. @PostMapping(value = "/updateAmsSaleOrder")
  183. public RESTfulResult updateAmsSaleOrder(@RequestBody(required = false) Map<String,Object> map) throws ParseException {
  184. int i = amsSaleOrderService.updateAmsSaleOrder(map);
  185. return success(i);
  186. }
  187. /**
  188. * 通过主键删除销售订单
  189. * @param saleOrderId
  190. * @return
  191. */
  192. @ApiOperation(value="通过主键删除销售订单")
  193. @ApiImplicitParams({
  194. @ApiImplicitParam(name = "saleOrderId", value = "主键Id", required = false, dataType = "java.math.BigDecimal")
  195. })
  196. @PostMapping(value = "/deleteAmsSaleOrderBySaleOrderId")
  197. public RESTfulResult deleteAmsSaleOrderBySaleOrderId(BigDecimal saleOrderId){
  198. int i = amsSaleOrderService.deleteAmsSaleOrderBySaleOrderId(saleOrderId);
  199. return success(i);
  200. }
  201. @ApiOperation(value="根据销售订单号查询销售订单修改日志")
  202. @ApiImplicitParams({
  203. @ApiImplicitParam(name = "apiId(100)", value = "表头", required = false, dataType = "Interger")
  204. })
  205. @PostMapping("/getSaleOrderUpdateLog")
  206. public RESTfulResult getSaleOrderUpdateLog(BigDecimal saleOrderId,@RequestBody(required=false) Map<String,Object> mapValue,
  207. Integer apiId,
  208. Integer pageNum,
  209. Integer pageSize){
  210. if (mapValue == null) {
  211. mapValue = new HashMap<>();
  212. }
  213. mapValue.put("saleOrderId",saleOrderId);
  214. PageHelper.startPage(pageNum,pageSize);
  215. List<Map<String, Object>> amsSaleOrderUpdate1 = amsSaleOrderService.getSaleOrderUpdateLog(mapValue);
  216. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,amsSaleOrderUpdate1);
  217. return success(pageList);
  218. }
  219. /**
  220. * 获取销售计划名称
  221. * @param
  222. * @return
  223. */
  224. @ApiOperation(value="获取销售计划名称")
  225. @ApiImplicitParams({
  226. })
  227. @GetMapping(value = "/getSalePlanName")
  228. public RESTfulResult getSalePlanName(){
  229. return success(amsSaleOrderService.getSalePlanName());
  230. }
  231. /**
  232. * 获取发货单位
  233. * @param
  234. * @return
  235. */
  236. @ApiOperation(value="获取发货单位")
  237. @ApiImplicitParams({
  238. })
  239. @GetMapping(value = "/getShipperName")
  240. public RESTfulResult getShipperName(){
  241. return success(amsSaleOrderService.getShipperName());
  242. }
  243. /**
  244. * 获取收货单位
  245. * @param
  246. * @return
  247. */
  248. @ApiOperation(value="获取收货单位")
  249. @ApiImplicitParams({
  250. })
  251. @GetMapping(value = "/getConsigneeCompanyName")
  252. public RESTfulResult getConsigneeCompanyName(){
  253. return success(amsSaleOrderService.getConsigneeCompanyName());
  254. }
  255. /**
  256. * 展示销售公司已审核销售订单的车序号列表
  257. * @param mapValue
  258. * @param pageNum
  259. * @param pageSize
  260. * @param apiId
  261. * @return
  262. */
  263. @ApiModelProperty(value = "展示销售公司已审核销售订单的车序号列表")
  264. @ApiImplicitParams({
  265. @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
  266. @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
  267. @ApiImplicitParam(name = "apiId", value = "181", required = false, dataType = "BigDecimal")
  268. })
  269. @PostMapping("/getSaleOrderList")
  270. public RESTfulResult getSaleOrderList(@RequestBody(required = false) Map<String,Object> mapValue,
  271. Integer pageNum,
  272. Integer pageSize,
  273. Integer apiId,
  274. Integer status,
  275. String con) {
  276. if (status!=null){
  277. mapValue.put("status",status);
  278. }
  279. PageHelper.startPage(pageNum,pageSize);
  280. //分页数据
  281. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getSaleOrderList(mapValue);
  282. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,saleOrderList);
  283. return success(pageList);
  284. }
  285. /**
  286. * 销售公司查询已审核的订单
  287. *
  288. */
  289. @ApiModelProperty(value = "展示销售公司已审核销售订单的车序号列表")
  290. @ApiImplicitParams({
  291. @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
  292. @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
  293. @ApiImplicitParam(name = "apiId", value = "181", required = false, dataType = "BigDecimal")
  294. })
  295. @PostMapping("/getSaleOrderListBySaleCompany")
  296. public RESTfulResult getSaleOrderListBySaleCompany(@RequestBody(required = false) Map<String,Object> mapValue,
  297. Integer pageNum,
  298. Integer pageSize,
  299. Integer apiId) {
  300. PageHelper.startPage(pageNum,pageSize);
  301. //分页数据
  302. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getSaleOrderListBySaleCompany(mapValue);
  303. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,saleOrderList);
  304. return success(pageList);
  305. }
  306. /**
  307. * 固定派单:通过车序号查询收货地址,截取收货地址的区域,去资源管理中查询对应的承运商,将车序号与承运商绑定
  308. */
  309. @PostMapping("/addAmsDispatchSaleOrder")
  310. public RESTfulResult addAmsDispatchSaleOrder(@RequestBody(required = false) List<Map<String,Object>> mapValue){
  311. // if(mapValue==null){
  312. // return failed();
  313. // }
  314. // for (Map<String,Object> m:mapValue
  315. // ) {
  316. // Integer id = Integer.parseInt(m.get("saleOrderMaterialId").toString()) ;
  317. // System.out.println(id);
  318. // //通过主键Id获取地址id
  319. // Integer a=amsSaleOrderMaterialService.selectById(new BigDecimal(id));
  320. // //通过地址id查询省市县
  321. // Map<String,Object> province = amsSaleOrderService.getCarrier(a);
  322. // //根据省市县查询承运商
  323. // List<Map<String,Object>> carrierList=amsSaleOrderService.selectCarrierIdByprovince(province);
  324. // //判断是否只有一个承运商
  325. // //如果收货地区为成都重庆,则有多个一个地区对应多个承运商
  326. // if(carrierList.size()==1) {
  327. // //新增固定派单
  328. // AmsDispatchSaleOrder ad = new AmsDispatchSaleOrder();
  329. // ad.setDispatchId(DataChange.dataToBigDecimal(m.get("dispatchId")));
  330. // ad.setSaleOrderMaterialId(new BigDecimal(id));
  331. // ad.setCarrierId(carrierList.get(0));
  332. // ad.setDispatchDealTime(new Date());
  333. // ad.setDispatchTime(new Date());
  334. // //成交类型(0:定向派单;1:公开抢单)
  335. // ad.setDispatchType(new BigDecimal(0));
  336. // //销售订单车序号状态(0:已下发;1:未下发)
  337. // ad.setDispatchStatus(new BigDecimal(0));
  338. // int i = amsDispatchSaleOrderMapper.updateByPrimaryKeySelective(ad);
  339. // return success(i);
  340. // }
  341. // }
  342. int result = amsSaleOrderService.addAmsDispatchSaleOrder(mapValue);
  343. return success(result);
  344. }
  345. /**
  346. * 公开派单:查询未分派车辆的销售订单的车序号
  347. */
  348. @ApiModelProperty(value = "展示车序号列表")
  349. @ApiImplicitParams({
  350. @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
  351. @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
  352. @ApiImplicitParam(name = "apiId", value = "182", required = false, dataType = "BigDecimal")
  353. })
  354. @PostMapping("/getAmsSaleOrderMaterial")
  355. public RESTfulResult getAmsSaleOrderMaterial(@RequestBody(required = false) Map<String,Object> mapValue,
  356. Integer pageNum,
  357. Integer pageSize,
  358. Integer apiId,
  359. Integer status) {
  360. mapValue.put("status",status);
  361. PageHelper.startPage(pageNum, pageSize);
  362. //分页查询数据
  363. List<Map<String, Object>> columnList = amsSaleOrderMaterialService.getSaleMaterial(mapValue);
  364. PageListAdd data = columnDataUtil.tableColumnData(apiId, null, columnList);
  365. return success(data);
  366. }
  367. /**
  368. * 公开派单:新增公开派单
  369. */
  370. @PostMapping("/addOpenAmsDispatchSaleOrder/{orderMaterialId}")
  371. public RESTfulResult addOpenAmsDispatchSaleOrder(@PathVariable("orderMaterialId") BigDecimal orderMaterialId){
  372. if(orderMaterialId==null){
  373. return failed();
  374. }
  375. //新增公开派单
  376. AmsDispatchSaleOrder ad = new AmsDispatchSaleOrder();
  377. Integer id = amsDispatchSaleOrderMapper.selectDispatchIdBySaleOrderMaterialId(orderMaterialId.intValue());
  378. ad.setDispatchId(DataChange.dataToBigDecimal(id));
  379. ad.setSaleOrderMaterialId(orderMaterialId);
  380. //成交类型(0:定向派单;1:公开抢单)
  381. ad.setDispatchType(new BigDecimal(1));
  382. //销售订单车序号状态(0:已下发;1:未下发)
  383. ad.setDispatchStatus(new BigDecimal(1));
  384. //更新公开派单状态
  385. amsDispatchSaleOrderMapper.updateByPrimaryKeySelective(ad);
  386. return success("更新成功");
  387. }
  388. /**
  389. * 删除公开派单
  390. */
  391. @PostMapping("/deleteAmsDispatchSaleOrder/{dispatchId}")
  392. public RESTfulResult deleteAmsDispatchSaleOrder(@PathVariable("dispatchId") BigDecimal dispatchId) {
  393. amsDispatchSaleOrderService.delete(dispatchId);
  394. return success("删除成功");
  395. }
  396. /**
  397. * 公开派单:查询公开派单
  398. */
  399. @ApiModelProperty(value = "展示公开派单")
  400. @ApiImplicitParams({
  401. @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
  402. @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
  403. @ApiImplicitParam(name = "apiId", value = "181", required = false, dataType = "BigDecimal")
  404. })
  405. @PostMapping("/getOpenDispatchSaleOrder")
  406. public RESTfulResult getOpenDispatchSaleOrder(@RequestBody(required = false) Map<String,Object> mapValue,
  407. Integer pageNum,
  408. Integer pageSize,
  409. Integer apiId) {
  410. PageHelper.startPage(pageNum, pageSize);
  411. //分页查询数据
  412. List<Map<String, Object>> columnList = amsDispatchSaleOrderService.getOpenDispatchSaleOrder(mapValue);
  413. PageListAdd data = columnDataUtil.tableColumnData(apiId, null, columnList);
  414. return success(data);
  415. }
  416. /**
  417. *公开派单:修改公开派单
  418. */
  419. @PostMapping("/updateOpenDispatchSaleOrder")
  420. public RESTfulResult updateOpenDispatchSaleOrder(@RequestBody AmsDispatchSaleOrder amsDispatchSaleOrder) {
  421. if(amsDispatchSaleOrder.getCarrierId()!=null){
  422. amsDispatchSaleOrder.setDispatchStatus(new BigDecimal(1));
  423. }
  424. amsDispatchSaleOrder.setDispatchDealTime(new Date());
  425. amsDispatchSaleOrder.setUpdateTime(new Date());
  426. amsDispatchSaleOrder.setUpdateUsername("admin");
  427. amsDispatchSaleOrderService.modify(amsDispatchSaleOrder);
  428. return success("修改成功");
  429. }
  430. @ApiOperation(value="查询未上报的销售订单信息")
  431. @ApiImplicitParams({
  432. @ApiImplicitParam(name = "apiId(408)", value = "表头", required = false, dataType = "Interger")
  433. })
  434. @PostMapping("/getSaleOrderInfoes")
  435. public RESTfulResult getSaleOrderInfoes(@RequestBody(required=false) Map<String,Object> mapValue,
  436. Integer apiId,
  437. Integer pageNum,
  438. Integer pageSize,
  439. String consigneeSsoId,
  440. String con,
  441. String startTime,
  442. String endTime,
  443. String saler
  444. ){
  445. if (consigneeSsoId != null && !"".equals(consigneeSsoId) && !"null".equals(consigneeSsoId)) {
  446. mapValue.put("consigneeSsoId",consigneeSsoId);
  447. }
  448. if (con != null && !"".equals(con) && !"null".equals(con)) {
  449. mapValue.put("con",con);
  450. }
  451. if (saler != null && !"".equals(saler) && !"null".equals(saler)){
  452. mapValue.put("saler","%" + saler + "%");
  453. }
  454. DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据
  455. PageHelper.startPage(pageNum,pageSize);
  456. List<Map<String, Object>> amsSaleOrder1 = amsSaleOrderService.getSaleOrderInfoes(mapValue);
  457. //调整列宽
  458. List<Map<String, Object>> columnDataList = columnDataFeign.getColumnData(apiId);
  459. int i=0;
  460. for (Map<String, Object> columnData : columnDataList) {
  461. //每个表头字段的过滤条件
  462. if (i==0){
  463. columnData.put("min-width","155px");
  464. }else if (i==1){
  465. columnData.put("min-width","127px");
  466. }else if (i==2){
  467. columnData.put("min-width","88px");
  468. }else if (i==3){
  469. columnData.put("min-width","98px");
  470. }
  471. columnData.put("filters", setListMap(amsSaleOrder1, columnData.get("prop").toString()));
  472. i++;
  473. }
  474. PageListAdd pageList = new PageListAdd(amsSaleOrder1);
  475. pageList.setColumnData(columnDataList);
  476. //PageListAdd pageList = columnDataUtil.tableColumnData4(apiId, null,amsSaleOrder1);
  477. return success(pageList);
  478. }
  479. //列宽调整条件
  480. private Set<Map<String, Object>> setListMap(List<Map<String, Object>> list, String name) {
  481. Set<Map<String, Object>> setString = new HashSet<>();
  482. for (Map<String, Object> map : list) {//遍历每条数据
  483. Map<String, Object> map1 = new HashMap<>();
  484. //map.get(name)获取每条数据中对应表头字段的数据
  485. map1.put("text", map.get(name));
  486. if (map.get(name) != null) {
  487. map1.put("value", map.get(name));
  488. setString.add(map1);
  489. }
  490. }
  491. return setString;
  492. }
  493. @ApiOperation(value="查询已上报销售订单信息")
  494. @ApiImplicitParams({
  495. @ApiImplicitParam(name = "apiId(408)", value = "表头", required = false, dataType = "Interger")
  496. })
  497. @PostMapping("/getSaleOrderReportedes")
  498. public RESTfulResult getSaleOrderReportedes(@RequestBody(required=false) Map<String,Object> mapValue,
  499. Integer apiId,
  500. Integer pageNum,
  501. Integer pageSize,
  502. String consigneeSsoId,
  503. String con,
  504. String startTime,
  505. String endTime,
  506. String saler){
  507. if (consigneeSsoId != null && !"".equals(consigneeSsoId) && !"null".equals(consigneeSsoId)) {
  508. mapValue.put("consigneeSsoId",consigneeSsoId);
  509. }
  510. if (con != null && !"".equals(con) && !"null".equals(con)) {
  511. mapValue.put("con",con);
  512. }
  513. if (saler != null && !"".equals(saler) && !"null".equals(saler)) {
  514. mapValue.put("saler","%" + saler + "%");
  515. }
  516. DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据
  517. PageHelper.startPage(pageNum,pageSize);
  518. List<Map<String, Object>> amsSaleOrder1 = amsSaleOrderService.getSaleOrderReportedes(mapValue);
  519. PageListAdd pageList = columnDataUtil.tableColumnData4(apiId, null,amsSaleOrder1);
  520. return success(pageList);
  521. }
  522. @ApiModelProperty(value = "展示已审核销售订单列表")
  523. @ApiImplicitParams({
  524. @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
  525. @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
  526. @ApiImplicitParam(name = "apiId", value = "409/475", required = false, dataType = "BigDecimal")
  527. })
  528. @PostMapping("/getSaleOrderListBySaleCompanyes")
  529. public RESTfulResult getSaleOrderListBySaleCompanyes(@RequestBody(required = false) Map<String,Object> mapValue,
  530. Integer pageNum,
  531. Integer pageSize,
  532. Integer apiId,
  533. String con,
  534. Integer shipperId,
  535. @RequestParam(required = false) Integer saleType,
  536. String consigneeSsoId,
  537. @RequestParam(required = false) String startTime,
  538. @RequestParam(required = false)String endTime,
  539. String saler
  540. ) {
  541. if (con != null && !"".equals(con) && !"null".equals(con)) {
  542. mapValue.put("con", con);
  543. }
  544. if(shipperId != null && !"".equals(shipperId) && !"null".equals(shipperId)){
  545. mapValue.put("shipperId", shipperId);
  546. }
  547. if (consigneeSsoId != null && !"".equals(consigneeSsoId) && !"null".equals(consigneeSsoId)) {
  548. mapValue.put("consigneeSsoId",consigneeSsoId);
  549. }
  550. if (saler != null && !"".equals(saler) && !"null".equals(saler)) {
  551. mapValue.put("saler","%" + saler + "%");
  552. }
  553. mapValue.put("saleType",saleType);
  554. DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据
  555. // SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
  556. // if(startDate != null && !"".equals(startDate) && !"null".equals(startDate)){
  557. // Date startTime=new Date(Long.parseLong(startDate));
  558. // String startTime1=simpleDateFormat.format(startTime);
  559. // mapValue.put("startTime",startTime1);
  560. // }
  561. // if(endDate != null && !"".equals(endDate) && !"null".equals(endDate)){
  562. // Date endTime=new Date(Long.parseLong(endDate));
  563. // String endTime1=simpleDateFormat.format(endTime);
  564. // mapValue.put("endTime",endTime1);
  565. // }
  566. //不分页筛选数据
  567. PageHelper.startPage(pageNum,pageSize);
  568. //分页数据
  569. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getSaleOrderListBySaleCompanyes(mapValue);
  570. //调整列宽
  571. List<Map<String, Object>> columnDataList = columnDataFeign.getColumnData(apiId);
  572. int i=0;
  573. for (Map<String, Object> columnData : columnDataList) {
  574. //每个表头字段的过滤条件
  575. if (i==0){
  576. columnData.put("min-width","155px");
  577. }else if (i==1){
  578. columnData.put("min-width","127px");
  579. }else if (i==2){
  580. columnData.put("min-width","88px");
  581. }else if (i==3){
  582. columnData.put("min-width","96px");
  583. }
  584. columnData.put("filters", setListMap(saleOrderList, columnData.get("prop").toString()));
  585. i++;
  586. }
  587. PageListAdd pageList = new PageListAdd(saleOrderList);
  588. pageList.setColumnData(columnDataList);
  589. //PageListAdd pageList = columnDataUtil.tableColumnData4(apiId, null,saleOrderList);
  590. return success(pageList);
  591. }
  592. @ApiOperation(value="查询财务已审批销售订单信息")
  593. @ApiImplicitParams({
  594. @ApiImplicitParam(name = "apiId(409)", value = "表头", required = false, dataType = "Interger")
  595. })
  596. @PostMapping("/getAmsSaleOrderApprovedes")
  597. public RESTfulResult getAmsSaleOrderApprovedes(@RequestBody(required=false) Map<String,Object> mapValue,
  598. Integer apiId,
  599. Integer pageNum,
  600. Integer pageSize,
  601. @RequestParam String con){
  602. if (con != null && !"undefined".equals(con)) {
  603. mapValue.put("con", con);
  604. }
  605. PageHelper.startPage(pageNum,pageSize);
  606. List<Map<String, Object>> amsSaleOrder1 = amsSaleOrderService.getAmsSaleOrderApprovedes(mapValue);
  607. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,amsSaleOrder1);
  608. return success(pageList);
  609. }
  610. /*
  611. * 根据销售订单主键展示销售基本信息、物资信息
  612. * apiId:410
  613. * */
  614. @PostMapping(value="/getSaleOrderAndMaterialById")
  615. public RESTfulResult getSaleOrderAndMaterialById(@RequestBody(required=false) Map<String,Object> mapValue,
  616. Integer apiId,
  617. Integer pageNum,
  618. Integer pageSize,
  619. BigDecimal saleOrderId){
  620. if (mapValue == null) {
  621. mapValue = new HashMap<>();
  622. }
  623. mapValue.put("saleOrderId",saleOrderId);
  624. PageHelper.startPage(pageNum,pageSize);
  625. List<Map<String, Object>> columndata = amsSaleOrderService.getSaleOrderAndMaterialById(mapValue);
  626. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,columndata);
  627. return success(pageList);
  628. }
  629. @ApiModelProperty(value = "展示销售焦炭订单列表")
  630. @ApiImplicitParams({
  631. @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
  632. @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
  633. @ApiImplicitParam(name = "apiId", value = "409", required = false, dataType = "BigDecimal")
  634. })
  635. @PostMapping("/getCokeSaleOrderList")
  636. public RESTfulResult getCokeSaleOrderList(@RequestBody(required = false) Map<String,Object> mapValue,
  637. Integer pageNum,
  638. Integer pageSize,
  639. Integer apiId,
  640. String con) {
  641. if (con != null && !con.equals("undefined")) {
  642. mapValue.put("con","%" + con + "%");
  643. }
  644. //不分页筛选数据
  645. PageHelper.startPage(pageNum,pageSize);
  646. //分页数据
  647. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getCokeSaleOrderList(mapValue);
  648. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,saleOrderList);
  649. return success(pageList);
  650. }
  651. @ApiModelProperty(value = "销售订单批量授权给承运商")
  652. @PostMapping("/saleOrderEmpowerCarrier")
  653. public RESTfulResult saleOrderEmpowerCarrier(@RequestBody(required = false) Map<String,Object> mapValue) {
  654. //获得订单ID集合 saleOrderIds
  655. List<Map<String,Integer>> saleOrderIds= (List<Map<String, Integer>>) mapValue.get("saleOrderIds");
  656. //获得承运商 carrierId
  657. BigDecimal carrierId= new BigDecimal(mapValue.get("carrierId").toString());
  658. //销售订单授权承运商中间表
  659. int i= amsSaleOrderCarrierService.addAmsSaleOrderCarrier(carrierId,saleOrderIds);
  660. return success(i);
  661. }
  662. @ApiModelProperty(value = "展示销售公司下发给承运商的销售订单列表")
  663. @ApiImplicitParams({
  664. @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
  665. @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
  666. @ApiImplicitParam(name = "apiId", value = "409", required = false, dataType = "BigDecimal")
  667. })
  668. @PostMapping("/getSaleOrderListByCarrierSsoId")
  669. public RESTfulResult getSaleOrderListByCarrierSsoId(@RequestBody(required = false) Map<String,Object> mapValue,
  670. String carrierSsoId,
  671. Integer pageNum,
  672. Integer pageSize,
  673. Integer apiId,
  674. String con) {
  675. if (con != null && !"".equals(con) && !"null".equals(con)) {
  676. mapValue.put("con", con);
  677. }
  678. if (carrierSsoId!=null){
  679. mapValue.put("carrierSsoId",carrierSsoId);
  680. }
  681. //不分页筛选数据
  682. PageHelper.startPage(pageNum,pageSize);
  683. //分页数据
  684. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getSaleOrderListByCarrierSsoId(mapValue);
  685. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,saleOrderList);
  686. return success(pageList);
  687. }
  688. @ApiModelProperty(value = "新增钢材销售订单")
  689. @PostMapping("/addSteelSaleOrder")
  690. public RESTfulResult addSteelSaleOrder(@RequestBody Map<String,Object> mapValue){
  691. System.out.println(mapValue);
  692. try {
  693. // 成功
  694. int result = amsSaleOrderService.addSteelSaleOrder(mapValue);
  695. return success(result);
  696. } catch (Exception e) {
  697. // 失败
  698. return failed(e.getMessage());
  699. }
  700. }
  701. @ApiModelProperty(value = "展示销售订单下的车序号和物资")
  702. @PostMapping("/getTruckNoAndMaterialList")
  703. public RESTfulResult getTruckNoAndMaterialList(@RequestParam Integer saleOrderId) {
  704. List<Map<String,Object>> mapList = amsSaleOrderService.getTruckNoAndMaterialList(new BigDecimal(saleOrderId));
  705. return success(mapList);
  706. }
  707. @ApiModelProperty(value = "钢材派单")
  708. @PostMapping("/dispatchSteelOrder")
  709. public RESTfulResult dispatchSteelOrder(@RequestBody List<Map<String,Object>> mapList) throws Exception {
  710. int result;
  711. try {
  712. result = amsSaleOrderService.dispatchSteelOrder(mapList);
  713. } catch (Exception e) {
  714. return failed(e.getMessage());
  715. }
  716. if (result == 0) {
  717. return failed("匹配不到车牌号!");
  718. }
  719. else {
  720. // 调用EAS接口将车牌号传给金蝶
  721. Map<String,Object> input = joinFeign.findCarNumberByOrderList(mapList);
  722. Map<String, Object> totalMap = easCapacityTestUtil.getTotalMap();
  723. totalMap.put("input",input);
  724. System.out.println(totalMap);
  725. String json = JSONUtils.toJSONString(totalMap);
  726. System.out.println(json);
  727. Map<String,Object> s = joinFeign.pushCarNumberToEas(totalMap);
  728. if (s == null || s.size() == 0) {
  729. throw new Exception("登录金蝶失败");
  730. }
  731. System.out.println(s);
  732. return success(result);
  733. }
  734. }
  735. @ApiModelProperty(value = "根据详细地址匹配承运商")
  736. @GetMapping("/getCarrierByPlace")
  737. public RESTfulResult getCarrierByPlace(@RequestParam Integer placeId) {
  738. List<Map<String,Object>> result = amsSaleOrderService.getCarrierByPlace(new BigDecimal(placeId));
  739. return success(result);
  740. }
  741. @ApiModelProperty(value = "根据详细地址和承运商匹配单价")
  742. @PostMapping("/getPriceByCarrierAndPlace")
  743. public RESTfulResult getPriceByCarrierAndPlace(@RequestBody Map<String,Object> mapValue) {
  744. Map<String,Object> result = amsSaleOrderService.getPriceByCarrierAndPlace(mapValue);
  745. return success(result);
  746. }
  747. @ApiModelProperty(value = "将车序号下发给承运商")
  748. @PostMapping("/dispatchToCarrier")
  749. public RESTfulResult dispatchToCarrier(@RequestBody(required = false) List<Map<String,Object>> mapList) {
  750. int result = amsSaleOrderService.dispatchToCarrier(mapList);
  751. return success(result);
  752. }
  753. @ApiModelProperty(value = "销售钢材承运商查询销售订单")
  754. @ApiImplicitParams({
  755. @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
  756. @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
  757. @ApiImplicitParam(name = "apiId", value = "409", required = false, dataType = "BigDecimal")
  758. })
  759. @PostMapping("/getSaleOrderListToCarrier")
  760. public RESTfulResult getSaleOrderListToCarrier(@RequestBody(required = false) Map<String, Object> mapValue,
  761. Integer pageNum,
  762. Integer pageSize,
  763. Integer apiId,
  764. String carrierSsoId,
  765. String con,
  766. @RequestParam(required = false) String startTime,
  767. @RequestParam(required = false) String endTime) {
  768. if (con != null && !"".equals(con) && !"null".equals(con)) {
  769. mapValue.put("con", "%" + con + "%");
  770. }
  771. if ((carrierSsoId != null && !"".equals(carrierSsoId)) && !"undefined".equals(carrierSsoId) && !"null".equals(carrierSsoId)) {
  772. mapValue.put("carrierSsoId", carrierSsoId);
  773. }
  774. DataChange.queryDataByDateTime(startTime, endTime, mapValue,sdfDateTime);//根据时间段查询数据
  775. //不分页筛选数据
  776. PageHelper.startPage(pageNum, pageSize);
  777. //分页数据
  778. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getSaleOrderListToCarrier(mapValue);
  779. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null, saleOrderList);
  780. return success(pageList);
  781. }
  782. /**
  783. * 展示未匹配承运商的车序号
  784. *
  785. * @param mapValue
  786. * @return
  787. */
  788. @ApiOperation(value = "展示未匹配承运商的车序号")
  789. @ApiImplicitParams({
  790. @ApiImplicitParam(name = "map", value = "销售订单物资信息map", required = false, dataType = "java.util.Map"),
  791. @ApiImplicitParam(name = "apiId", value = "411", required = false, dataType = "java.util.Map")
  792. })
  793. @PostMapping(value = "/getSteelTruckNoList")
  794. public RESTfulResult getSteelTruckNoList(@RequestBody(required = false) Map<String, Object> mapValue,
  795. Integer apiId,
  796. Integer pageNum,
  797. Integer pageSize,
  798. String con,
  799. @RequestParam(required = false) String startTime,
  800. @RequestParam(required = false)String endTime) {
  801. if (con != null && !con.equals("undefined") && !con.equals("null")) {
  802. mapValue.put("con", "%" + con + "%");
  803. }
  804. DataChange.queryDataByDateTime(startTime, endTime, mapValue,sdfDateTime);//根据时间段查询数据
  805. PageHelper.startPage(pageNum, pageSize);
  806. //分页数据
  807. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getSteelTruckNoList(mapValue);
  808. PageListAdd pageList = columnDataUtil.tableColumnData(apiId,null, saleOrderList);
  809. return success(pageList);
  810. }
  811. @ApiModelProperty(value = "展示销售订单下的车序号和物资")
  812. @PostMapping("/getTruckNoMaterial")
  813. public RESTfulResult getTruckNoMaterial(@RequestParam Integer saleOrderMaterialId) {
  814. List<Map<String,Object>> mapList = amsSaleOrderService.getTruckNoMaterial(new BigDecimal(saleOrderMaterialId));
  815. return success(mapList);
  816. }
  817. /**
  818. * 展示已分配承运商但未派车的车序号
  819. *
  820. * @param mapValue
  821. * @return
  822. */
  823. @ApiOperation(value = "展示已分配承运商但未派车的车序号")
  824. @ApiImplicitParams({
  825. @ApiImplicitParam(name = "map", value = "销售订单物资信息map", required = false, dataType = "java.util.Map"),
  826. @ApiImplicitParam(name = "apiId", value = "466", required = false, dataType = "java.util.Map")
  827. })
  828. @PostMapping(value = "/getNoCarTruckNoList")
  829. public RESTfulResult getNoCarTruckNoList(@RequestBody(required = false) Map<String, Object> mapValue,
  830. Integer apiId,
  831. Integer pageNum,
  832. Integer pageSize,
  833. String con,
  834. @RequestParam(required = false) String startTime,
  835. @RequestParam(required = false)String endTime) {
  836. if (con != null && !con.equals("undefined") && !con.equals("null")) {
  837. mapValue.put("con", "%" + con + "%");
  838. }
  839. DataChange.queryDataByDateTime(startTime, endTime, mapValue,sdfDateTime);//根据时间段查询数据
  840. PageHelper.startPage(pageNum, pageSize);
  841. //分页数据
  842. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getNoCarTruckNoList(mapValue);
  843. PageListAdd pageList = columnDataUtil.tableColumnData(apiId,null, saleOrderList);
  844. return success(pageList);
  845. }
  846. /**
  847. * 展示已派车的车序号
  848. *
  849. * @param mapValue
  850. * @return
  851. */
  852. @ApiOperation(value = "展示已派车的车序号")
  853. @ApiImplicitParams({
  854. @ApiImplicitParam(name = "map", value = "销售订单物资信息map", required = false, dataType = "java.util.Map"),
  855. @ApiImplicitParam(name = "apiId", value = "466", required = false, dataType = "java.util.Map")
  856. })
  857. @PostMapping(value = "/getHaveCarTruckNoList")
  858. public RESTfulResult getHaveCarTruckNoList(@RequestBody(required = false) Map<String, Object> mapValue,
  859. Integer apiId,
  860. Integer pageNum,
  861. Integer pageSize,
  862. String con,
  863. String startTime,
  864. String endTime) {
  865. if (con != null && !con.equals("undefined") && !con.equals("null")) {
  866. mapValue.put("con", "%" + con + "%");
  867. }
  868. DataChange.queryDataByDateTime(startTime, endTime, mapValue,sdfDateTime);//根据时间段查询数据
  869. PageHelper.startPage(pageNum, pageSize);
  870. //分页数据
  871. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getHaveCarTruckNoList(mapValue);
  872. PageListAdd pageList = columnDataUtil.tableColumnData(apiId,null, saleOrderList);
  873. return success(pageList);
  874. }
  875. @ApiModelProperty(value = "删除上一条销售订单")
  876. @PostMapping("/deleteSaleOrderById")
  877. public RESTfulResult deleteSaleOrderById(@RequestParam Integer saleOrderId) {
  878. int result = amsSaleOrderService.deleteSaleOrderById(new BigDecimal(saleOrderId));
  879. return success(result);
  880. }
  881. @ApiModelProperty(value = "检查规格型号的格式对不对")
  882. @PostMapping("/queryFormat")
  883. public RESTfulResult queryFormat(@RequestBody List<Map<String,Object>> mapList){
  884. for (Map<String, Object> map : mapList) {
  885. String specification = (String) map.get("Specification");
  886. Integer count = amsDispatchSaleOrderMapper.queryFormatCount(specification);
  887. if (count.compareTo(0)==0){
  888. return failed(count);
  889. }
  890. }
  891. return success();
  892. }
  893. @ApiModelProperty(value = "查询物资ID并赋值")
  894. @PostMapping(value = "/queryMaterial")
  895. RESTfulResult queryMaterial(@RequestBody List<Map<String,Object>> mapList){
  896. List<Map<String,Object>> mapList1=mapList;
  897. for (Map<String, Object> map : mapList1) {
  898. String specification = (String) map.get("Specification");
  899. String materialName = (String) map.get("materialName");
  900. BigDecimal materialid = amsDispatchSaleOrderMapper.queryMaterial(specification, materialName);
  901. if (materialid ==null){
  902. return failed();
  903. }
  904. map.remove("materialId");
  905. map.put("materialId",materialid);
  906. }
  907. return success(mapList1);
  908. }
  909. @ApiModelProperty(value = "查询出销售订单下的所有数据")
  910. @PostMapping("/getAllSaleMessages")
  911. public RESTfulResult getAllSaleMessages(@RequestParam Integer saleOrderId) {
  912. Map<String,Object> saleMap = amsSaleOrderService.getAllSaleMessages(new BigDecimal(saleOrderId));
  913. return success(saleMap);
  914. }
  915. @ApiModelProperty(value = "修改承运商授权")
  916. @PostMapping("/updateTruckNoCarrier")
  917. public RESTfulResult updateTruckNoCarrier(@RequestBody Map<String,Object> mapValue) {
  918. int result = amsSaleOrderService.updateTruckNoCarrier(mapValue);
  919. return success(result);
  920. }
  921. /**
  922. * 批量上传销售订单
  923. * @param saleOrderIdList
  924. * @return
  925. */
  926. @ApiOperation(value="批量上传销售订单")
  927. @ApiImplicitParams({
  928. @ApiImplicitParam(name = "saleOrderId", value = "销售订单ID", required = false, dataType = "java.math.BigDecimal")
  929. })
  930. @PostMapping(value = "/uploadSaleOrderList")
  931. public RESTfulResult uploadSaleOrderList(@RequestBody List<Map<String,Object>> saleOrderIdList){
  932. int i = amsSaleOrderService.uploadSaleOrderList(saleOrderIdList);
  933. return success(i);
  934. }
  935. @ApiModelProperty(value = "新增钒渣销售订单(未被使用,实际是走水渣的路线)")
  936. @PostMapping("/addVanadiumSaleOrder")
  937. public RESTfulResult addVanadiumSaleOrder(@RequestBody Map<String,Object> mapValue) {
  938. int result = amsSaleOrderService.addVanadiumSaleOrder(mapValue);
  939. return success(result);
  940. }
  941. @ApiModelProperty(value = "自动匹配出最近的一个地址")
  942. @PostMapping("/matchingAddressRecently")
  943. public RESTfulResult matchingAddressRecently(@RequestParam BigDecimal receiveId) {
  944. List<Map<String,Object>> mapList = amsSaleOrderService.matchingAddressRecently(receiveId);
  945. return success(mapList);
  946. }
  947. @ApiModelProperty(value = "自动匹配上一条运单的司机电话")
  948. @PostMapping("/matchingDriverTelRecently")
  949. public RESTfulResult matchingDriverTelRecently(@RequestParam String capacityNumber) {
  950. String driverTel = amsSaleOrderService.matchingDriverTelRecently(capacityNumber);
  951. return success(driverTel);
  952. }
  953. /**
  954. * 查询内转焦炭订单
  955. *
  956. * @param mapValue
  957. * @return
  958. */
  959. @ApiOperation(value = "查询内转焦炭订单")
  960. @ApiImplicitParams({
  961. @ApiImplicitParam(name = "map", value = "查询内转焦炭订单", required = false, dataType = "java.util.Map"),
  962. @ApiImplicitParam(name = "apiId", value = "168", required = false, dataType = "java.util.Map")
  963. })
  964. @PostMapping(value = "/getCokeInwardOrderList")
  965. public RESTfulResult getCokeInwardOrderList(@RequestBody(required = false) Map<String, Object> mapValue,
  966. Integer apiId,
  967. Integer pageNum,
  968. Integer pageSize,
  969. Integer orderStatus,
  970. String con) {
  971. if (con != null && !con.equals("undefined") && !con.equals("null")) {
  972. mapValue.put("con", "%" + con + "%");
  973. }
  974. if (orderStatus != null) {
  975. mapValue.put("orderStatus",orderStatus);
  976. }
  977. PageHelper.startPage(pageNum, pageSize);
  978. //分页数据
  979. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getCokeInwardOrderList(mapValue);
  980. PageListAdd pageList = columnDataUtil.tableColumnData(apiId,null, saleOrderList);
  981. return success(pageList);
  982. }
  983. /**
  984. * 修改收货地址
  985. *
  986. * @param mapValue
  987. * @return
  988. */
  989. @ApiOperation(value = "修改收货地址")
  990. @ApiImplicitParams({
  991. @ApiImplicitParam(name = "map", value = "修改收货地址", required = false, dataType = "java.util.Map")
  992. })
  993. @PostMapping(value = "/updateCarAddress")
  994. @Transactional
  995. public RESTfulResult updateCarAddress(@RequestBody Map<String, Object> mapValue) throws Exception {
  996. int result = amsSaleOrderService.updateCarAddress(mapValue);
  997. if (result == 0) {
  998. // 如果返回结果为0,则认定是关闭了车辆
  999. BigDecimal saleOrderMaterialId = DataChange.dataToBigDecimal(mapValue.get("saleOrderMaterialId"));
  1000. List<Map<String, Object>> saleMaterialIdList = amsSaleOrderService.getSaleMaterialId(saleOrderMaterialId);
  1001. String wholeOrder = "0";
  1002. String status = "close";
  1003. String reason = "收货地址修改超过片区范围";
  1004. // 循环调用关闭金蝶分录接口
  1005. for (Map<String, Object> head : saleMaterialIdList) {
  1006. head.put("wholeOrder", wholeOrder);
  1007. head.put("status", status);
  1008. head.put("reason", reason);
  1009. Map<String, Object> input = new HashMap<>();
  1010. input.put("head", head);
  1011. Map<String, Object> totalMap = easDeleteUtil.getTotalMap();
  1012. totalMap.put("input", input);
  1013. String json = JSONUtils.toJSONString(totalMap);
  1014. System.out.println("--------------------------------------------");
  1015. System.out.println(json);
  1016. System.out.println("--------------------------------------------");
  1017. Map<String, Object> resultMap = joinFeign.deleteSaleOrderToEas(totalMap);
  1018. System.out.println("--------------------------------------------");
  1019. System.out.println(resultMap);
  1020. }
  1021. }
  1022. return success(result);
  1023. }
  1024. /**
  1025. * 修改销售订单中的物资
  1026. *
  1027. * @param mapValue
  1028. * @return
  1029. */
  1030. @ApiOperation(value = "修改销售订单中的物资")
  1031. @ApiImplicitParams({
  1032. @ApiImplicitParam(name = "map", value = "修改收货地址", required = false, dataType = "java.util.Map")
  1033. })
  1034. @PostMapping(value = "/updateAllMaterialInSale")
  1035. public RESTfulResult updateAllMaterialInSale(@RequestBody Map<String, Object> mapValue) {
  1036. //分页数据
  1037. int result = amsSaleOrderService.updateAllMaterialInSale(mapValue);
  1038. BigDecimal saleOrderId = DataChange.dataToBigDecimal(mapValue.get("saleOrderId"));
  1039. // 调用金蝶接口,将销售订单推送到金蝶系统
  1040. Map<String, Object> input = joinFeign.getSaleOrder(saleOrderId);
  1041. Map<String, Object> head = (Map<String, Object>) input.get("head");
  1042. head.put("status", "update");
  1043. // 获得金蝶接口配置:正式
  1044. // Map<String, Object> totalMap = easUtil.getTotalMap();
  1045. // 获得金蝶接口配置:测试
  1046. Map<String, Object> totalMap = easUtil.getTotalMap();
  1047. // 组装报文
  1048. totalMap.put("input", input);
  1049. System.out.println(totalMap);
  1050. String json = JSONUtils.toJSONString(totalMap);
  1051. System.out.println(json);
  1052. Map<String,Object> resultMap = joinFeign.pushSaleOrderToEas(totalMap);
  1053. System.out.println(resultMap);
  1054. return success(result);
  1055. }
  1056. @ApiModelProperty(value = "展示副产品销售订单列表")
  1057. @ApiImplicitParams({
  1058. @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
  1059. @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
  1060. @ApiImplicitParam(name = "apiId", value = "481", required = false, dataType = "BigDecimal")
  1061. })
  1062. @PostMapping("/getFuSaleOrderList")
  1063. public RESTfulResult getFuSaleOrderList(@RequestBody(required = false) Map<String, Object> mapValue,
  1064. Integer pageNum,
  1065. Integer pageSize,
  1066. Integer apiId,
  1067. String con,
  1068. BigDecimal deleted,
  1069. @RequestParam(required = false) String startTime,
  1070. @RequestParam(required = false)String endTime
  1071. ) {
  1072. if (con != null && !"".equals(con) && !"null".equals(con)) {
  1073. mapValue.put("con", con);
  1074. }
  1075. DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据
  1076. mapValue.put("deleted",deleted);
  1077. //不分页筛选数据
  1078. PageHelper.startPage(pageNum, pageSize);
  1079. //分页数据
  1080. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getFuSaleOrderList(mapValue);
  1081. PageListAdd pageList = columnDataUtil.tableColumnData4(apiId, null, saleOrderList);
  1082. return success(pageList);
  1083. }
  1084. @ApiModelProperty(value = "同步关闭金蝶订单")
  1085. @PostMapping("/deleteSaleOrderSame")
  1086. public RESTfulResult deleteSaleOrderSame(@RequestBody Map<String,Object> mapValue) {
  1087. int result = amsSaleOrderService.deleteSaleOrderSame(mapValue);
  1088. return success(result);
  1089. }
  1090. @ApiModelProperty(value = "展示反审批的钢材订单")
  1091. @ApiImplicitParams({
  1092. @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
  1093. @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
  1094. @ApiImplicitParam(name = "apiId", value = "481", required = false, dataType = "BigDecimal")
  1095. })
  1096. @PostMapping("/getSteelOrderDeletedList")
  1097. public RESTfulResult getSteelOrderDeletedList(@RequestBody(required = false) Map<String, Object> mapValue,
  1098. Integer pageNum,
  1099. Integer pageSize,
  1100. Integer apiId,
  1101. String con,
  1102. String consigneeSsoId,
  1103. @RequestParam(required = false) String startTime,
  1104. @RequestParam(required = false) String endTime,String saler
  1105. ) {
  1106. if (con != null && !"".equals(con) && !"null".equals(con)) {
  1107. mapValue.put("con", con);
  1108. }
  1109. if (consigneeSsoId != null && !"".equals(consigneeSsoId) && !"null".equals(consigneeSsoId)) {
  1110. mapValue.put("consigneeSsoId", consigneeSsoId);
  1111. }
  1112. if (saler != null && !"".equals(saler) && !"null".equals(saler)) {
  1113. mapValue.put("saler", saler);
  1114. }
  1115. DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据
  1116. //不分页筛选数据
  1117. PageHelper.startPage(pageNum, pageSize);
  1118. //分页数据
  1119. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getSteelOrderDeletedList(mapValue);
  1120. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null, saleOrderList);
  1121. return success(pageList);
  1122. }
  1123. @ApiModelProperty(value = "展示所有状态销售订单列表")
  1124. @ApiImplicitParams({
  1125. @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
  1126. @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
  1127. @ApiImplicitParam(name = "apiId", value = "409/475", required = false, dataType = "BigDecimal")
  1128. })
  1129. @PostMapping("/getAllSteelSaleOrderList")
  1130. public RESTfulResult getAllSteelSaleOrderList(@RequestBody(required = false) Map<String,Object> mapValue,
  1131. Integer pageNum,
  1132. Integer pageSize,
  1133. Integer apiId,
  1134. String con,
  1135. Integer shipperId,
  1136. @RequestParam(required = false) Integer saleType,
  1137. String consigneeSsoId
  1138. // String startDate,
  1139. // String endDate
  1140. ) {
  1141. if (con != null && !"".equals(con) && !"null".equals(con)) {
  1142. mapValue.put("con", con);
  1143. }
  1144. if(shipperId != null && !"".equals(shipperId) && !"null".equals(shipperId)){
  1145. mapValue.put("shipperId", shipperId);
  1146. }
  1147. if (consigneeSsoId != null && !"".equals(consigneeSsoId) && !"null".equals(consigneeSsoId)) {
  1148. mapValue.put("consigneeSsoId",consigneeSsoId);
  1149. }
  1150. mapValue.put("saleType",saleType);
  1151. // SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
  1152. // if(startDate != null && !"".equals(startDate) && !"null".equals(startDate)){
  1153. // Date startTime=new Date(Long.parseLong(startDate));
  1154. // String startTime1=simpleDateFormat.format(startTime);
  1155. // mapValue.put("startTime",startTime1);
  1156. // }
  1157. // if(endDate != null && !"".equals(endDate) && !"null".equals(endDate)){
  1158. // Date endTime=new Date(Long.parseLong(endDate));
  1159. // String endTime1=simpleDateFormat.format(endTime);
  1160. // mapValue.put("endTime",endTime1);
  1161. // }
  1162. //不分页筛选数据
  1163. PageHelper.startPage(pageNum,pageSize);
  1164. //分页数据
  1165. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getAllSteelSaleOrderList(mapValue);
  1166. PageListAdd pageList = columnDataUtil.tableColumnData(apiId, null,saleOrderList);
  1167. return success(pageList);
  1168. }
  1169. @ApiModelProperty(value = "修改厂内未装货车辆的运单车牌号")
  1170. @PostMapping("/updateCapacityNumberInFactory")
  1171. public RESTfulResult updateCapacityNumberInFactory(@RequestBody Map<String,Object> mapValue) {
  1172. int result = amsSaleOrderService.updateCapacityNumberInFactory(mapValue);
  1173. if (result == 0) {
  1174. return failed("已装货车辆不允许修改车牌");
  1175. }
  1176. else {
  1177. // 调用EAS接口将车牌号传给金蝶
  1178. List<Map<String,Object>> mapList = new ArrayList<>();
  1179. mapList.add(mapValue);
  1180. Map<String, Object> input = joinFeign.findCarNumberByOrderList(mapList);
  1181. Map<String, Object> totalMap = easCapacityTestUtil.getTotalMap();
  1182. totalMap.put("input", input);
  1183. System.out.println(totalMap);
  1184. String json = JSONUtils.toJSONString(totalMap);
  1185. System.out.println(json);
  1186. Map<String, Object> s = joinFeign.pushCarNumberToEas(totalMap);
  1187. System.out.println("-------------------------------------");
  1188. System.out.println(s);
  1189. System.out.println("-------------------------------------");
  1190. return success(result);
  1191. }
  1192. }
  1193. @ApiModelProperty(value = "修改收货客户的电话(销售)")
  1194. @PostMapping("/updateConsigneeTel")
  1195. public RESTfulResult updateConsigneeTel(@RequestBody Map<String,Object> mapValue){
  1196. int result=amsSaleOrderService.updateConsigneeTel(mapValue);
  1197. if (result ==0){
  1198. return failed("更新收货客户电话失败");
  1199. }else {
  1200. return success("更新收货客户电话成功");
  1201. }
  1202. }
  1203. @ApiModelProperty(value = "展示下发给承运商的车序号和物资")
  1204. @PostMapping("/getCarrierTruckNoAndMaterialList")
  1205. public RESTfulResult getCarrierTruckNoAndMaterialList(@RequestBody Map<String,Object> map) {
  1206. List<Map<String,Object>> mapList = amsSaleOrderService.getCarrierTruckNoAndMaterialList(map);
  1207. return success(mapList);
  1208. }
  1209. @ApiModelProperty(value = "关闭单个钢材物资分录")
  1210. @PostMapping("/closeSteelMaterialId")
  1211. public RESTfulResult closeSteelMaterialId(@RequestBody Map<String, Object> mapValue) {
  1212. int result = amsSaleOrderService.closeSteelMaterialId(mapValue);
  1213. if (result == 0) {
  1214. return failed("该物资已装货,无法关闭物资分录!!");
  1215. }
  1216. String reason = (String) mapValue.get("reason");
  1217. String number = (String) mapValue.get("number");
  1218. String closeEntryId = (String) mapValue.get("closeEntryId");
  1219. BigDecimal closeWlEntryId = DataChange.dataToBigDecimal(mapValue.get("saleMaterialId"));
  1220. String wholeOrder = "0";
  1221. String status = "close";
  1222. Map<String,Object> head = new HashMap<>();
  1223. // 销售订单号
  1224. head.put("number",number);
  1225. // 关闭原因
  1226. head.put("reason",reason);
  1227. // 金蝶分录
  1228. head.put("closeEntryId",closeEntryId);
  1229. // 是否整单:(0:分录,1:整单)
  1230. head.put("wholeOrder",wholeOrder);
  1231. // 物流销售订单分录主键
  1232. head.put("closeWlEntryId",closeWlEntryId);
  1233. // 状态:close为关闭
  1234. head.put("status",status);
  1235. Map<String,Object> input = new HashMap<>();
  1236. Map<String, Object> totalMap = easUtil.getTotalMap();
  1237. input.put("head",head);
  1238. totalMap.put("input",input);
  1239. // 调用金蝶关闭接口
  1240. String json = JSONUtils.toJSONString(totalMap);
  1241. System.out.println(json);
  1242. Map<String,Object> resultMap = joinFeign.deleteSaleOrderToEas(totalMap);
  1243. System.out.println(resultMap);
  1244. return success(result);
  1245. }
  1246. @ApiModelProperty(value = "展示已审核化产焦炭销售订单列表")
  1247. @ApiImplicitParams({
  1248. @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
  1249. @ApiImplicitParam(name = "pageSize", value = "每页记录数", required = false, dataType = "Integer"),
  1250. @ApiImplicitParam(name = "apiId", value = "409/475", required = false, dataType = "BigDecimal")
  1251. })
  1252. @PostMapping("/getSaleCokeOrder")
  1253. public RESTfulResult getSaleCokeOrder(@RequestBody(required = false) Map<String, Object> mapValue,
  1254. Integer pageNum,
  1255. Integer pageSize,
  1256. Integer apiId,
  1257. String con,
  1258. String consigneeSsoId,
  1259. Integer shipperId,
  1260. @RequestParam(required = false) String startTime,
  1261. @RequestParam(required = false) String endTime
  1262. ) {
  1263. if (con != null && !"".equals(con) && !"null".equals(con)) {
  1264. mapValue.put("con", con);
  1265. }
  1266. if (consigneeSsoId != null && !"".equals(consigneeSsoId) && !"null".equals(consigneeSsoId)) {
  1267. mapValue.put("consigneeSsoId",consigneeSsoId);
  1268. }
  1269. if (shipperId != null && !"".equals(shipperId) && !"null".equals(shipperId)) {
  1270. mapValue.put("shipperId", shipperId);
  1271. }
  1272. DataChange.queryDataByDateTime(startTime, endTime, mapValue, sdfDateTime);//根据时间段查询数据
  1273. //不分页筛选数据
  1274. PageHelper.startPage(pageNum, pageSize);
  1275. //分页数据
  1276. List<Map<String, Object>> saleOrderList = amsSaleOrderService.getSaleCokeOrder(mapValue);
  1277. PageListAdd pageList = columnDataUtil.tableColumnData4(apiId, null, saleOrderList);
  1278. return success(pageList);
  1279. }
  1280. @ApiModelProperty(value = "反关闭金蝶单个分录")
  1281. @PostMapping("/adverseCloseSaleMaterial")
  1282. public RESTfulResult adverseCloseSaleMaterial(@RequestParam Integer saleMaterialId) {
  1283. int result = amsSaleOrderService.adverseCloseSaleMaterial(new BigDecimal(saleMaterialId));
  1284. return success(result);
  1285. }
  1286. @ApiModelProperty(value = "反关闭金蝶整个销售订单")
  1287. @PostMapping("/adverseCloseSaleOrder")
  1288. public RESTfulResult adverseCloseSaleOrder(@RequestParam Integer saleOrderId) {
  1289. int result = amsSaleOrderService.adverseCloseSaleOrder(new BigDecimal(saleOrderId));
  1290. return success(result);
  1291. }
  1292. //库存调拨单
  1293. @ApiOperation(value = "库存调拨单")
  1294. @PostMapping("/getKucunList")
  1295. public RESTfulResult getKucunList(@RequestBody(required = false)Map<String,Object>map,
  1296. String startTime,
  1297. String endTime,
  1298. String remark,
  1299. String transferIndep,
  1300. String consigneeName,
  1301. String totheStation){
  1302. if(remark != null && !"null".equals(remark)&&!"".equals(remark)){
  1303. map.put("remark","%" + remark + "%");
  1304. }
  1305. if(transferIndep != null && !"null".equals(transferIndep) && !"".equals(transferIndep)){
  1306. map.put("transferIndep","%" + transferIndep + "%");
  1307. }
  1308. if(consigneeName != null && !"null".equals(consigneeName) && !"".equals(consigneeName)){
  1309. map.put("consigneeName","%" + consigneeName + "%");
  1310. }
  1311. if(totheStation != null && !"null".equals(totheStation) && !"".equals(totheStation)){
  1312. map.put("totheStation","%" + totheStation + "%");
  1313. }
  1314. DataChange.queryDataByDateTime(startTime, endTime, map, sdfDateTime);//根据时间段查询数据
  1315. List<Map<String,Object>> mapList = amsSaleOrderService.getKucunList(map);
  1316. return success(mapList);
  1317. }
  1318. @ApiOperation("批量新增销售订单")
  1319. @PostMapping("addSteelSaleOrderList")
  1320. public RESTfulResult addSteelSaleOrderList(@RequestBody List<Map<String,Object>> mapList){
  1321. int count = 0;
  1322. String saleOrderNo = null;
  1323. System.out.println("------销售订单批量导入Excel导入-----");
  1324. System.out.println(mapList);
  1325. System.out.println("------销售订单批量导入Excel导入-----");
  1326. try {
  1327. for (Map<String,Object> map:mapList
  1328. ) {
  1329. saleOrderNo = map.get("saleOrderNo").toString();
  1330. count += amsSaleOrderService.addSteelSaleOrder(map);
  1331. }
  1332. } catch (Exception e) {
  1333. return failed("销售订单编号为:" + saleOrderNo + e.getMessage());
  1334. }
  1335. return success(count);
  1336. }
  1337. @ApiOperation("反关闭运单")
  1338. @PostMapping("reverseCloseOrder")
  1339. public RESTfulResult reverseCloseOrder(@RequestBody(required = false) Map<String,Object> map){
  1340. //反关闭运单
  1341. int result = amsSaleOrderService.reverseCloseOrder(map);
  1342. return success(result);
  1343. }
  1344. @ApiOperation("查询销售订单状态")
  1345. @PostMapping("getSaleOrderStatus")
  1346. public RESTfulResult getSaleOrderStatus(@RequestParam String saleNumber){
  1347. int result = amsSaleOrderService.getSaleOrderStatus(saleNumber);
  1348. return success(result);
  1349. }
  1350. }