CommonService.java 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735
  1. package com.dk.mdm.service.common;
  2. import com.alibaba.fastjson.JSONArray;
  3. import com.alibaba.fastjson.JSONObject;
  4. import com.dk.common.infrastructure.constant.Constant;
  5. import com.dk.common.infrastructure.enums.ErrorCodeEnum;
  6. import com.dk.common.mapper.BaseMapper;
  7. import com.dk.common.model.pojo.PageList;
  8. import com.dk.common.model.vo.core.StaffEntity;
  9. import com.dk.common.model.vo.core.UserVO;
  10. import com.dk.common.response.ResponseCodeEnum;
  11. import com.dk.common.response.ResponseResultUtil;
  12. import com.dk.common.response.ResponseResultVO;
  13. import com.dk.common.service.BaseService;
  14. import com.dk.mdm.mapper.common.CommonMapper;
  15. import com.dk.mdm.infrastructure.util.AuthUtils;
  16. import com.dk.mdm.mapper.mst.StaffMapper;
  17. import com.dk.mdm.model.response.mst.StaffResponse;
  18. import lombok.extern.slf4j.Slf4j;
  19. import org.postgresql.util.PGobject;
  20. import org.springframework.beans.factory.annotation.Autowired;
  21. import org.springframework.stereotype.Service;
  22. import org.springframework.transaction.annotation.Transactional;
  23. import org.springframework.util.CollectionUtils;
  24. import java.util.*;
  25. import java.util.stream.Collectors;
  26. /**
  27. * @author : 周兴
  28. * @desc : 控件数据源API
  29. * @date : 2023/1/3 17:21
  30. */
  31. @Service
  32. @Slf4j
  33. public class CommonService extends BaseService<Map<String, Object>> {
  34. @Override
  35. public BaseMapper<Map<String, Object>> getRepository() {
  36. return commonMapper;
  37. }
  38. @Autowired
  39. private CommonMapper commonMapper;
  40. @Autowired
  41. private StaffMapper staffMapper;
  42. @Autowired
  43. private AuthUtils authUtils;
  44. /**
  45. * @desc : 获取编码/单号
  46. * @author : 周兴
  47. * @date : 2024/3/1 11:41
  48. */
  49. public Map<String, Object> getUniqueNoteCode(String docName, Boolean codeFlag) {
  50. Map<String, Object> param = new HashMap<>();
  51. param.put("docName", docName);
  52. // 公司Id
  53. StaffEntity staff = authUtils.getStaff();
  54. param.put("cpId", staff.getCpId());
  55. Map<String, Object> map = null;
  56. // 获取系统基础数据
  57. if (codeFlag) {
  58. map = commonMapper.getUniqueCode(param);
  59. } else {
  60. map = commonMapper.getUniqueNote(param);
  61. }
  62. return map;
  63. }
  64. /**
  65. * @desc : 登录后获取信息
  66. * @author : 周兴
  67. * @date : 2024/3/4 11:41
  68. */
  69. @Transactional(
  70. rollbackFor = {Exception.class}
  71. )
  72. public ResponseResultVO<Map<String, List<Map<String, Object>>>> getInfoAfterLogin(Map<String, Object> param) {
  73. // 先根据userId查询当前企业的员工信息
  74. StaffResponse staff = staffMapper.selectByUserId(param.get("userId").toString());
  75. if (staff != null) {
  76. // 存Redis
  77. authUtils.saveStaff(new StaffEntity().setStaffId(staff.getStaffId())
  78. .setStaffCode(staff.getStaffCode())
  79. .setStaffName(staff.getStaffName())
  80. .setCpId(Integer.parseInt(param.get("cpId").toString()))
  81. .setAppCode(param.get("appCode").toString()));
  82. }
  83. // 获取菜单
  84. List<Map<String, Object>> menuList = commonMapper.getMenuByUser(param);
  85. Map<String, List<Map<String, Object>>> map = new HashMap<>();
  86. map.put("menuList", menuList);
  87. return ResponseResultUtil.success(map);
  88. }
  89. /**
  90. * @desc : 获取数据字典项目
  91. * @author : 王英杰
  92. * @date : 2023/1/6 11:41
  93. */
  94. public ResponseResultVO<List<Map<String, Object>>> getDictionaryItemData(Map<String, Object> param) {
  95. // 获取系统基础数据
  96. List<Map<String, Object>> list = commonMapper.getDictionaryItemData(param);
  97. return ResponseResultUtil.success(list);
  98. }
  99. /**
  100. * @desc : 刷新基础数据
  101. * @author : 周兴
  102. * @date : 2023/5/11 10:19
  103. */
  104. public ResponseResultVO refreshBasicData(Map<String, Object> param) {
  105. return null;
  106. // UserVO user = authUtils.getUser();
  107. // if (param.get("appCode") != null) {
  108. // user.setAppCode(param.get("appCode").toString());
  109. // }
  110. // Map userMap = new HashMap();
  111. // userMap.put("userId", user.getUserId());
  112. // userMap.put("appCode", user.getAppCode());
  113. // return ResponseResultUtil.success(new HashMap<String, Object>(3) {{
  114. // put("menu", commonMapper.getMenuByUser(user.getAppCode(), user.getUserId()));
  115. // put("function", (user.getRoleIds() != null && user.getRoleIds().indexOf(-1) >= 0)
  116. // ? commonMapper.getUserFunctionAdmin(userMap) : commonMapper.getUserFunction(userMap));
  117. // put("userTableSetting", commonMapper.getUserTableInfo(userMap));
  118. // }});
  119. }
  120. /**
  121. * @desc : 获取序号最大值
  122. * @author : 周兴
  123. * @date : 2023/1/6 11:41t_user_right
  124. */
  125. public Integer getMaxDisplayNo(Constant.DisplayNoTable displayNoTable, Map<String, Object> param) {
  126. if (param == null) {
  127. param = new HashMap<>();
  128. }
  129. param.put("cpId", authUtils.getStaff().getCpId());
  130. String table = displayNoTable.getTable();
  131. String mode = displayNoTable.getMode();
  132. if (table != null && mode != null) {
  133. table = mode + "." + table;
  134. param.put("table", table);
  135. // 获取最大序号
  136. Integer maxDisplayNo = commonMapper.getMaxDisplayNo(param);
  137. return maxDisplayNo == null ? 1 : maxDisplayNo;
  138. }
  139. return 0;
  140. }
  141. /**
  142. * @desc : 获取序号最大值
  143. * @author : 周兴
  144. * @date : 2023/1/6 11:41t_user_right
  145. */
  146. public Integer getMaxDisplayNo(Constant.DisplayNoTable displayNoTable) {
  147. return getMaxDisplayNo(displayNoTable, null);
  148. }
  149. /**
  150. * @desc : 获取系统表数据种类
  151. * @author : 周兴
  152. * @date : 2023/1/6 11:41
  153. */
  154. public ResponseResultVO<List<Map<String, Object>>> getDataKind(Map<String, Object> param) {
  155. // 获取系统基础数据
  156. List<Map<String, Object>> list = commonMapper.getDataKind(param);
  157. return ResponseResultUtil.success(list);
  158. }
  159. /**
  160. * @desc : 获取组织部门
  161. * @author : 姜宁
  162. * @date : 2023/1/9 13:50
  163. */
  164. public ResponseResultVO<List<Map<String, Object>>> getOrg(Map<String, Object> param) {
  165. // 获取系统基础数据
  166. List<Map<String, Object>> list = commonMapper.getOrg(param);
  167. return ResponseResultUtil.success(list);
  168. }
  169. /**
  170. * @desc : 获取部门
  171. * @author : 姜宁
  172. * @date : 2023/1/29 17:01
  173. */
  174. public ResponseResultVO<PageList<Map<String, Object>>> getOrgByPage(Map<String, Object> param) {
  175. // 校验分页参数
  176. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  177. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  178. }
  179. // 分页参数赋值
  180. param = this.getLimit(param);
  181. return super.mergeListWithCount(param, commonMapper.getOrg(param),
  182. commonMapper.getOrgCountByPage(param));
  183. }
  184. /**
  185. * @desc : 获取商品品牌
  186. * @author : 夏常明
  187. * @date : 2023/1/10 14:24
  188. */
  189. public ResponseResultVO<List<Map<String, Object>>> getBrand(Map<String, Object> param) {
  190. // 获取系统基础数据
  191. List<Map<String, Object>> list = commonMapper.getBrand(param);
  192. return ResponseResultUtil.success(list);
  193. }
  194. /**
  195. * @desc : 获取角色
  196. * @author : 姜宁
  197. * @date : 2023/1/29 14:28
  198. */
  199. public ResponseResultVO<List<Map<String, Object>>> getRole(Map<String, Object> param) {
  200. // 获取系统基础数据
  201. List<Map<String, Object>> list = commonMapper.getRole(param);
  202. return ResponseResultUtil.success(list);
  203. }
  204. /**
  205. * @desc : 获取员工信息
  206. * @author : 周兴
  207. * @date : 2023/2/2 13:11
  208. */
  209. public ResponseResultVO<List<Map<String, Object>>> getStaff(Map<String, Object> param) {
  210. // 获取员工
  211. List<Map<String, Object>> list = commonMapper.getStaffByPage(param);
  212. return ResponseResultUtil.success(list);
  213. }
  214. /**
  215. * @desc : 获取员工
  216. * @author : 姜宁
  217. * @date : 2023/1/29 17:01
  218. */
  219. public ResponseResultVO<PageList<Map<String, Object>>> getStaffByPage(Map<String, Object> param) {
  220. // 校验分页参数
  221. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  222. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  223. }
  224. // 分页参数赋值
  225. param = this.getLimit(param);
  226. return super.mergeListWithCount(param, commonMapper.getStaffByPage(param),
  227. commonMapper.getStaffCountByPage(param));
  228. }
  229. /**
  230. * @desc : 查询系统参数
  231. * @author : 周兴
  232. * @date : 2023/1/29 17:04
  233. */
  234. public ResponseResultVO getSettingValue(Map<String, Object> param) {
  235. if (param.get("code").getClass().getName() == "java.util.ArrayList") {
  236. param.put("codes", param.get("code"));
  237. // 如果是数组,那么调用多个的查询
  238. Map<String, Map<String, String>> settingMap = commonMapper.getSettingValues(param);
  239. // 定义返回值
  240. JSONObject object = JSONObject.parseObject(((PGobject) settingMap.get("f_get_setting_values")).getValue());
  241. return ResponseResultUtil.success(object);
  242. } else {
  243. // 单个
  244. String setting = commonMapper.getSettingValue(param);
  245. // 定义返回值
  246. return ResponseResultUtil.success(setting);
  247. }
  248. }
  249. /**
  250. * @desc : 查询系统参数分类
  251. * @author : 夏常明
  252. * @date : 2023/1/30 16:05
  253. */
  254. public ResponseResultVO<List<Map<String, Object>>> getSettingKind(Map<String, Object> param) {
  255. // 获取系统基础数据
  256. List<Map<String, Object>> list = commonMapper.getSettingKind(param);
  257. return ResponseResultUtil.success(list);
  258. }
  259. /**
  260. * @desc : 设置分页参数
  261. * @author : 姜宁
  262. * @date : 2023/2/1 14:00
  263. */
  264. private Map<String, Object> getLimit(Map<String, Object> param) {
  265. if (param.get("limit") != null) {
  266. param.put("currentPage", 1);
  267. param.put("pageSize", param.get("limit"));
  268. }
  269. param.put("start", ((int) param.get("currentPage") - 1) * (int) param.get("pageSize"));
  270. param.put("end", param.get("pageSize"));
  271. return param;
  272. }
  273. /**
  274. * @desc : 获取组织部门
  275. * @author : 姜宁
  276. * @date : 2023/2/1 14:09
  277. */
  278. public ResponseResultVO<PageList<Map<String, Object>>> getOrganizationByPage(Map<String, Object> param) {
  279. // 校验分页参数
  280. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  281. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  282. }
  283. // 分页参数赋值
  284. param = this.getLimit(param);
  285. return super.mergeListWithCount(param, commonMapper.getOrganizationByPage(param),
  286. commonMapper.getOrganizationCountByPage(param));
  287. }
  288. /**
  289. * @desc : 获取数据字典
  290. * @author : 姜宁
  291. * @date : 2023/2/7 14:47
  292. */
  293. public ResponseResultVO<List<Map<String, Object>>> getDictionaryData(Map<String, Object> param) {
  294. // 获取数据字典
  295. List<Map<String, Object>> list = commonMapper.getDictionaryData(param);
  296. return ResponseResultUtil.success(list);
  297. }
  298. /**
  299. * @desc : 获取用户隐藏列信息
  300. * @author : 周兴
  301. * @date : 2023/4/4 15:05
  302. */
  303. public ResponseResultVO<List<Map<String, Object>>> getUserTableInfo(Map<String, Object> param) {
  304. return ResponseResultUtil.success(commonMapper.getUserTableInfo(param));
  305. }
  306. /**
  307. * @desc : 获取用户功能
  308. * @author : 周兴
  309. * @date : 2023/4/4 15:05
  310. */
  311. public ResponseResultVO<List<Map<String, Object>>> getUserFunction(Map<String, Object> param) {
  312. return ResponseResultUtil.success(commonMapper.getUserFunction(param));
  313. }
  314. /**
  315. * @desc : 查导航菜单(自定义报表用)
  316. * @author : 周兴
  317. * @date : 2023/4/4 15:05
  318. */
  319. public ResponseResultVO<List<Map<String, Object>>> getMenuNavigation(Map<String, Object> param) {
  320. return ResponseResultUtil.success(commonMapper.getMenuNavigation(param));
  321. }
  322. /**
  323. * @desc : 获取数据类型
  324. * @author : 周兴
  325. * @date : 2023/6/2 11:01
  326. */
  327. public ResponseResultVO<List<Map<String, Object>>> getValueKind(Map<String, Object> param) {
  328. return ResponseResultUtil.success(commonMapper.getValueKind(param));
  329. }
  330. /**
  331. * @desc : 获取应用
  332. * @author : 洪旭东
  333. * @date : 2023-06-30 14:56
  334. */
  335. public ResponseResultVO<List<Map<String, String>>> getApplication() {
  336. return ResponseResultUtil.success(commonMapper.getApplication());
  337. }
  338. /**
  339. * @desc : 获取单据
  340. * @author : 周兴
  341. * @date : 2023/9/14 11:06
  342. */
  343. public ResponseResultVO<List<Map<String, Object>>> getDoc(Map<String, Object> param) {
  344. return ResponseResultUtil.success(commonMapper.getDoc(param));
  345. }
  346. /**
  347. * @desc : 获取商品
  348. * @author : 姜宁
  349. * @date : 2023/1/9 13:50
  350. */
  351. public ResponseResultVO<List<Map<String, Object>>> getGoods(Map<String, Object> param) {
  352. // 获取系统基础数据
  353. List<Map<String, Object>> list = commonMapper.getGoods(param);
  354. return ResponseResultUtil.success(list);
  355. }
  356. /**
  357. * @desc : 获取商品数量
  358. * @author : 姜宁
  359. * @date : 2023/1/29 17:01
  360. */
  361. public ResponseResultVO<PageList<Map<String, Object>>> getGoodsPage(Map<String, Object> param) {
  362. // 校验分页参数
  363. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  364. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  365. }
  366. // 分页参数赋值
  367. param = this.getLimit(param);
  368. return super.mergeListWithCount(param, commonMapper.getGoods(param),
  369. commonMapper.getGoodsCountByPage(param));
  370. }
  371. /**
  372. * @desc : 获取商品(销售订单开单用)
  373. * @author : 付斌
  374. * @date : 2024-03-09 9:57
  375. */
  376. public ResponseResultVO<List<Map<String, Object>>> getGoodsForOrder(Map<String, Object> param) {
  377. // 获取系统基础数据
  378. List<Map<String, Object>> list = commonMapper.getGoodsForOrder(param);
  379. return ResponseResultUtil.success(list);
  380. }
  381. /**
  382. * @desc : 获取商品(销售订单开单用)(分页)
  383. * @author : 付斌
  384. * @date : 2024-03-09 9:57
  385. */
  386. public ResponseResultVO<PageList<Map<String, Object>>> getGoodsForOrderByPage(Map<String, Object> param) {
  387. // 校验分页参数
  388. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  389. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  390. }
  391. // 分页参数赋值
  392. param = this.getLimit(param);
  393. return super.mergeListWithCount(param, commonMapper.getGoodsForOrder(param),
  394. commonMapper.getGoodsForOrderCountByPage(param));
  395. }
  396. /**
  397. * @desc : 获取商品(采购订单开单用)
  398. * @author : 常皓宁
  399. * @date : 2024/3/9 10:08
  400. */
  401. public ResponseResultVO<List<Map<String, Object>>> getGoodsForPurchase(Map<String, Object> param) {
  402. // 获取系统基础数据
  403. List<Map<String, Object>> list = commonMapper.getGoodsForPurchase(param);
  404. return ResponseResultUtil.success(list);
  405. }
  406. /**
  407. * @desc : 获取商品(采购订单开单用)(分页)
  408. * @author : 常皓宁
  409. * @date : 2024/3/9 10:08
  410. */
  411. public ResponseResultVO<PageList<Map<String, Object>>> getGoodsForPurchaseByPage(Map<String, Object> param) {
  412. // 校验分页参数
  413. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  414. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  415. }
  416. // 分页参数赋值
  417. param = this.getLimit(param);
  418. return super.mergeListWithCount(param, commonMapper.getGoodsForPurchase(param),
  419. commonMapper.getGoodsForPurchaseCountByPage(param));
  420. }
  421. /**
  422. * @desc : 获取客户
  423. * @author : 付斌
  424. * @date : 2024-03-09 9:55
  425. */
  426. public ResponseResultVO<List<Map<String, Object>>> getCustomer(Map<String, Object> param) {
  427. // 获取系统基础数据
  428. List<Map<String, Object>> list = commonMapper.getCustomer(param);
  429. return ResponseResultUtil.success(list);
  430. }
  431. /**
  432. * @desc : 获取客户(分页)
  433. * @author : 付斌
  434. * @date : 2024-03-09 9:55
  435. */
  436. public ResponseResultVO<PageList<Map<String, Object>>> GetCustomerByPage(Map<String, Object> param) {
  437. // 校验分页参数
  438. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  439. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  440. }
  441. // 分页参数赋值
  442. param = this.getLimit(param);
  443. return super.mergeListWithCount(param, commonMapper.getCustomer(param),
  444. commonMapper.getCustomerCountByPage(param));
  445. }
  446. /**
  447. * @desc : 获取供应商
  448. * @author : 常皓宁
  449. * @date : 2024/3/1 9:20
  450. */
  451. public ResponseResultVO<List<Map<String, Object>>> getSupplier(Map<String, Object> param) {
  452. // 获取公司
  453. List<Map<String, Object>> list = commonMapper.getSupplier(param);
  454. return ResponseResultUtil.success(list);
  455. }
  456. /**
  457. * @desc : 获取供应商(分页)
  458. * @author : 常皓宁
  459. * @date : 2024/3/1 9:20
  460. */
  461. public ResponseResultVO<PageList<Map<String, Object>>> getSupplierByPage(Map<String, Object> param) {
  462. // 校验分页参数
  463. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  464. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  465. }
  466. // 分页参数赋值
  467. param = this.getLimit(param);
  468. // 定义返回值
  469. PageList data = new PageList<>();
  470. // 获取供应商
  471. List<Map<String, Object>> list = commonMapper.getSupplier(param);
  472. // 获取总数量
  473. Long total = commonMapper.countSupplier(param);
  474. // 组装返回值
  475. data.setPageSize((int) param.get("pageSize")).setCurrentPage((int) param.get("currentPage")).setList(list).setTotal(total);
  476. return ResponseResultUtil.success(data);
  477. }
  478. /**
  479. * @desc : 获取渠道
  480. * @author : 付斌
  481. * @date : 2024-03-02 10:18
  482. */
  483. public ResponseResultVO<List<Map<String, Object>>> getChannel(Map<String, Object> param) {
  484. // 获取公司
  485. List<Map<String, Object>> list = commonMapper.getChannel(param);
  486. return ResponseResultUtil.success(list);
  487. }
  488. /**
  489. * @desc : 获取商品品牌(分页)
  490. * @author : 王英杰
  491. * @date : 2024/3/1 9:20
  492. */
  493. public ResponseResultVO<PageList<Map<String, Object>>> goodsBrandListBy(Map<String, Object> param) {
  494. // 校验分页参数
  495. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  496. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  497. }
  498. // 分页参数赋值
  499. param = this.getLimit(param);
  500. // 定义返回值
  501. PageList data = new PageList<>();
  502. // 获取公司
  503. List<Map<String, Object>> list = commonMapper.getGoodsBrand(param);
  504. // 获取总数量
  505. Long total = commonMapper.countGoodsBrand(param);
  506. // 组装返回值
  507. data.setPageSize((int) param.get("pageSize")).setCurrentPage((int) param.get("currentPage")).setList(list).setTotal(total);
  508. return ResponseResultUtil.success(data);
  509. }
  510. /**
  511. * @desc : 获取商品种类(分页)
  512. * @author : 王英杰
  513. * @date : 2024/3/1 9:20
  514. */
  515. public ResponseResultVO<PageList<Map<String, Object>>> goodsCategoryListBy(Map<String, Object> param) {
  516. // 校验分页参数
  517. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  518. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  519. }
  520. // 分页参数赋值
  521. param = this.getLimit(param);
  522. // 定义返回值
  523. PageList data = new PageList<>();
  524. // 获取公司
  525. List<Map<String, Object>> list = commonMapper.getGoodsCategory(param);
  526. // 获取总数量
  527. Long total = commonMapper.countGoodsCategory(param);
  528. // 组装返回值
  529. data.setPageSize((int) param.get("pageSize")).setCurrentPage((int) param.get("currentPage")).setList(list).setTotal(total);
  530. return ResponseResultUtil.success(data);
  531. }
  532. /**
  533. * @desc : 获取商品系列(分页)
  534. * @author : 王英杰
  535. * @date : 2024/3/1 9:20
  536. */
  537. public ResponseResultVO<PageList<Map<String, Object>>> goodsSeriesListBy(Map<String, Object> param) {
  538. // 校验分页参数
  539. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  540. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  541. }
  542. // 分页参数赋值
  543. param = this.getLimit(param);
  544. // 定义返回值
  545. PageList data = new PageList<>();
  546. // 获取公司
  547. List<Map<String, Object>> list = commonMapper.getGoodsSeries(param);
  548. // 获取总数量
  549. Long total = commonMapper.countGoodsSeries(param);
  550. // 组装返回值
  551. data.setPageSize((int) param.get("pageSize")).setCurrentPage((int) param.get("currentPage")).setList(list).setTotal(total);
  552. return ResponseResultUtil.success(data);
  553. }
  554. /**
  555. * @desc : 计量单位查询(分页)
  556. * @author : 王英杰
  557. * @date : 2024/3/1 9:20
  558. */
  559. public ResponseResultVO<PageList<Map<String, Object>>> unitListBy(Map<String, Object> param) {
  560. // 校验分页参数
  561. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  562. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  563. }
  564. // 分页参数赋值
  565. param = this.getLimit(param);
  566. // 定义返回值
  567. PageList data = new PageList<>();
  568. // 获取公司
  569. List<Map<String, Object>> list = commonMapper.getUnit(param);
  570. // 获取总数量
  571. Long total = commonMapper.countUnit(param);
  572. // 组装返回值
  573. data.setPageSize((int) param.get("pageSize")).setCurrentPage((int) param.get("currentPage")).setList(list).setTotal(total);
  574. return ResponseResultUtil.success(data);
  575. }
  576. /**
  577. * @desc : 获取仓库档案
  578. * @author : 王英杰
  579. * @date :2024/3/1 9:20
  580. */
  581. public ResponseResultVO<PageList<Map<String, Object>>> getWarehouseByPage(Map<String, Object> param) {
  582. this.getLimit(param);
  583. return super.mergeListWithCount(param, commonMapper.getWarehouseByPage(param),
  584. commonMapper.countWarehouseByPage(param));
  585. }
  586. /**
  587. * @desc : 获取仓库
  588. * @author : 常皓宁
  589. * @date : 2024/3/4 10:50
  590. */
  591. public ResponseResultVO<List<Map<String, Object>>> getWarehouse(Map<String, Object> param) {
  592. // 获取仓库
  593. List<Map<String, Object>> list = commonMapper.getWarehouse(param);
  594. return ResponseResultUtil.success(list);
  595. }
  596. /**
  597. * @desc : 查询库存
  598. * @author : 付斌
  599. * @date : 2024-03-05 10:52
  600. */
  601. public ResponseResultVO<List<Map<String, Object>>> getInventory(Map<String, Object> param) {
  602. // 获取系统基础数据
  603. List<Map<String, Object>> list = commonMapper.getInventory(param);
  604. return ResponseResultUtil.success(list);
  605. }
  606. /**
  607. * @desc : 查询库存(分页)
  608. * @author : 付斌
  609. * @date : 2024-03-05 10:52
  610. */
  611. public ResponseResultVO<PageList<Map<String, Object>>> getInventoryByPage(Map<String, Object> param) {
  612. // 校验分页参数
  613. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  614. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  615. }
  616. // 分页参数赋值
  617. param = this.getLimit(param);
  618. return super.mergeListWithCount(param, commonMapper.getInventory(param),
  619. commonMapper.getInventoryCountByPage(param));
  620. }
  621. /**
  622. * @desc : 获取页面数据源集合 (小程序用)
  623. * @author : 于继渤
  624. * @date : 2024/2/26 10:36
  625. */
  626. public ResponseResultVO<List<Map<String, Object>>> getInitData(Map<String, Object> param) {
  627. //判断前台是否传 dataSourceCode
  628. if (!param.containsKey("dataSourceCode") && param.get("dataSourceCode") == null) {
  629. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.DATASOURCECODE_NOT.getMessage());
  630. }
  631. String dataSourceCode = param.get("dataSourceCode").toString();
  632. //查询到的结果集
  633. List<Map<String, Object>> list = null;
  634. Integer cpId = authUtils.getStaff().getCpId();
  635. Map<String, Object> map = new HashMap<>();
  636. map.put("cpId",cpId);
  637. //客户来源
  638. if (dataSourceCode.equals("customerFrom")) {
  639. map.put("dictCode","基础资料-来源");
  640. list = commonMapper.getDictionaryData(map);
  641. }
  642. //销售渠道
  643. if (dataSourceCode.equals("saleChannel")) {
  644. list = commonMapper.getSaleChannel(map);
  645. }
  646. //部门
  647. if (dataSourceCode.equals("org")) {
  648. list = commonMapper.getOrg(map);
  649. }
  650. //员工
  651. if (dataSourceCode.equals("staff")) {
  652. list = commonMapper.getStaff(map);
  653. }
  654. //仓库
  655. if (dataSourceCode.equals("warehouse")) {
  656. list = commonMapper.getWarehouse(map);
  657. }
  658. //客户意向
  659. if (dataSourceCode.equals("customerIntention")) {
  660. map.put("kindType","客户意向");
  661. list = commonMapper.getDataKind(map);
  662. }
  663. //留店时长
  664. if (dataSourceCode.equals("storeRetentionTime")) {
  665. map.put("kindType","留店时长");
  666. list = commonMapper.getDataKind(map);
  667. }
  668. //邀约结果
  669. if (dataSourceCode.equals("invitationResults")) {
  670. map.put("kindType","邀约结果");
  671. list = commonMapper.getDataKind(map);
  672. }
  673. //量尺状态
  674. if (dataSourceCode.equals("scaleStatus")) {
  675. map.put("kindType","量尺状态");
  676. list = commonMapper.getDataKind(map);
  677. }
  678. return ResponseResultUtil.success(list);
  679. }
  680. }