CommonService.java 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979
  1. package com.dk.mdm.service.common;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.dk.common.infrastructure.constant.Constant;
  4. import com.dk.common.infrastructure.enums.ErrorCodeEnum;
  5. import com.dk.common.mapper.BaseMapper;
  6. import com.dk.common.model.pojo.PageList;
  7. import com.dk.common.model.vo.core.StaffEntity;
  8. import com.dk.common.response.ResponseCodeEnum;
  9. import com.dk.common.response.ResponseResultUtil;
  10. import com.dk.common.response.ResponseResultVO;
  11. import com.dk.common.service.BaseService;
  12. import com.dk.mdm.mapper.common.CommonMapper;
  13. import com.dk.mdm.infrastructure.util.AuthUtils;
  14. import com.dk.mdm.mapper.mst.StaffMapper;
  15. import com.dk.common.model.response.mst.StaffResponse;
  16. import com.dk.mdm.model.pojo.mst.Staff;
  17. import lombok.extern.slf4j.Slf4j;
  18. import org.postgresql.util.PGobject;
  19. import org.springframework.beans.factory.annotation.Autowired;
  20. import org.springframework.stereotype.Service;
  21. import org.springframework.transaction.annotation.Transactional;
  22. import java.util.*;
  23. /**
  24. * @author : 周兴
  25. * @desc : 控件数据源API
  26. * @date : 2023/1/3 17:21
  27. */
  28. @Service
  29. @Slf4j
  30. public class CommonService extends BaseService<Map<String, Object>> {
  31. @Override
  32. public BaseMapper<Map<String, Object>> getRepository() {
  33. return commonMapper;
  34. }
  35. @Autowired
  36. private CommonMapper commonMapper;
  37. @Autowired
  38. private StaffMapper staffMapper;
  39. @Autowired
  40. private AuthUtils authUtils;
  41. /**
  42. * @desc : 获取编码/单号
  43. * @author : 周兴
  44. * @date : 2024/3/1 11:41
  45. */
  46. public Map<String, Object> getUniqueNoteCode(String docName, Boolean codeFlag) {
  47. Map<String, Object> param = new HashMap<>();
  48. param.put("docName", docName);
  49. // 公司Id
  50. StaffEntity staff = authUtils.getStaff();
  51. param.put("cpId", staff.getCpId());
  52. Map<String, Object> map = null;
  53. // 获取系统基础数据
  54. if (codeFlag) {
  55. map = commonMapper.getUniqueCode(param);
  56. } else {
  57. map = commonMapper.getUniqueNote(param);
  58. }
  59. return map;
  60. }
  61. /**
  62. * @desc : 获取编码/单号
  63. * @author : 周兴
  64. * @date : 2024/3/1 11:41
  65. */
  66. public Map<String, Object> getUniqueNoteCode(String docName, Integer cpId, Boolean codeFlag) {
  67. Map<String, Object> param = new HashMap<>();
  68. param.put("docName", docName);
  69. // 公司Id
  70. // StaffEntity staff = authUtils.getStaff();
  71. param.put("cpId", cpId);
  72. Map<String, Object> map = null;
  73. // 获取系统基础数据
  74. if (codeFlag) {
  75. map = commonMapper.getUniqueCode(param);
  76. } else {
  77. map = commonMapper.getUniqueNote(param);
  78. }
  79. return map;
  80. }
  81. /**
  82. * @desc : 获取数据字典项目
  83. * @author : 王英杰
  84. * @date : 2023/1/6 11:41
  85. */
  86. public ResponseResultVO<List<Map<String, Object>>> getDictionaryItemData(Map<String, Object> param) {
  87. // 获取系统基础数据
  88. List<Map<String, Object>> list = commonMapper.getDictionaryItemData(param);
  89. return ResponseResultUtil.success(list);
  90. }
  91. /**
  92. * @desc : 刷新基础数据
  93. * @author : 周兴
  94. * @date : 2023/5/11 10:19
  95. */
  96. public ResponseResultVO refreshBasicData(Map<String, Object> param) {
  97. return null;
  98. // UserVO user = authUtils.getUser();
  99. // if (param.get("appCode") != null) {
  100. // user.setAppCode(param.get("appCode").toString());
  101. // }
  102. // Map userMap = new HashMap();
  103. // userMap.put("userId", user.getUserId());
  104. // userMap.put("appCode", user.getAppCode());
  105. // return ResponseResultUtil.success(new HashMap<String, Object>(3) {{
  106. // put("menu", commonMapper.getMenuByUser(user.getAppCode(), user.getUserId()));
  107. // put("function", (user.getRoleIds() != null && user.getRoleIds().indexOf(-1) >= 0)
  108. // ? commonMapper.getUserFunctionAdmin(userMap) : commonMapper.getUserFunction(userMap));
  109. // put("userTableSetting", commonMapper.getUserTableInfo(userMap));
  110. // }});
  111. }
  112. /**
  113. * @desc : 获取序号最大值
  114. * @author : 周兴
  115. * @date : 2023/1/6 11:41t_user_right
  116. */
  117. public Integer getMaxDisplayNo(Constant.DisplayNoTable displayNoTable, Map<String, Object> param) {
  118. if (param == null) {
  119. param = new HashMap<>();
  120. }
  121. param.put("cpId", authUtils.getStaff().getCpId());
  122. String table = displayNoTable.getTable();
  123. String mode = displayNoTable.getMode();
  124. if (table != null && mode != null) {
  125. table = mode + "." + table;
  126. param.put("table", table);
  127. // 默认有效标识为true
  128. if(param.get("noFlgValid") == null && param.get("flgValid") == null ){
  129. param.put("flgValid",true);
  130. }
  131. // 获取最大序号
  132. Integer maxDisplayNo = commonMapper.getMaxDisplayNo(param);
  133. return maxDisplayNo == null ? 1 : maxDisplayNo;
  134. }
  135. return 0;
  136. }
  137. /**
  138. * @desc : 获取序号最大值
  139. * @author : 周兴
  140. * @date : 2023/1/6 11:41t_user_right
  141. */
  142. public Integer getMaxDisplayNo(Constant.DisplayNoTable displayNoTable) {
  143. return getMaxDisplayNo(displayNoTable, null);
  144. }
  145. /**
  146. * @desc : 获取系统表数据种类
  147. * @author : 周兴
  148. * @date : 2023/1/6 11:41
  149. */
  150. public ResponseResultVO<List<Map<String, Object>>> getDataKind(Map<String, Object> param) {
  151. // 获取系统基础数据
  152. List<Map<String, Object>> list = commonMapper.getDataKind(param);
  153. return ResponseResultUtil.success(list);
  154. }
  155. /**
  156. * @desc : 获取组织部门
  157. * @author : 姜宁
  158. * @date : 2023/1/9 13:50
  159. */
  160. public ResponseResultVO<List<Map<String, Object>>> getOrg(Map<String, Object> param) {
  161. // 获取系统基础数据
  162. List<Map<String, Object>> list = commonMapper.getOrg(param);
  163. return ResponseResultUtil.success(list);
  164. }
  165. /**
  166. * @desc : 只获取二级部门 按照level_code 排序
  167. * @author : 王英杰
  168. * @date : 2023/1/9 13:49
  169. */
  170. public ResponseResultVO<List<Map<String, Object>>> getProcureOrg(Map<String, Object> param) {
  171. // 获取系统基础数据
  172. List<Map<String, Object>> list = commonMapper.getProcureOrg(param);
  173. return ResponseResultUtil.success(list);
  174. }
  175. /**
  176. * @desc : 获取部门
  177. * @author : 姜宁
  178. * @date : 2023/1/29 17:01
  179. */
  180. public ResponseResultVO<PageList<Map<String, Object>>> getOrgByPage(Map<String, Object> param) {
  181. // 校验分页参数
  182. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  183. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  184. }
  185. // 分页参数赋值
  186. param = this.getLimit(param);
  187. return super.mergeListWithCount(param, commonMapper.getOrg(param),
  188. commonMapper.getOrgCountByPage(param));
  189. }
  190. /**
  191. * @desc : 获取角色
  192. * @author : 姜宁
  193. * @date : 2023/1/29 14:28
  194. */
  195. public ResponseResultVO<List<Map<String, Object>>> getRole(Map<String, Object> param) {
  196. // 获取系统基础数据
  197. List<Map<String, Object>> list = commonMapper.getRole(param);
  198. return ResponseResultUtil.success(list);
  199. }
  200. /**
  201. * @desc : 获取员工信息
  202. * @author : 周兴
  203. * @date : 2023/2/2 13:11
  204. */
  205. public ResponseResultVO<List<Map<String, Object>>> getStaff(Map<String, Object> param) {
  206. // 获取员工
  207. List<Map<String, Object>> list = commonMapper.getStaffByPage(param);
  208. return ResponseResultUtil.success(list);
  209. }
  210. /**
  211. * @desc : 获取员工
  212. * @author : 姜宁
  213. * @date : 2023/1/29 17:01
  214. */
  215. public ResponseResultVO<PageList<Map<String, Object>>> getStaffByPage(Map<String, Object> param) {
  216. // 校验分页参数
  217. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  218. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  219. }
  220. // 分页参数赋值
  221. param = this.getLimit(param);
  222. return super.mergeListWithCount(param, commonMapper.getStaffByPage(param),
  223. commonMapper.getStaffCountByPage(param));
  224. }
  225. /**
  226. * @desc : 查询系统参数
  227. * @author : 周兴
  228. * @date : 2023/1/29 17:04
  229. */
  230. public ResponseResultVO getSettingValue(Map<String, Object> param) {
  231. if (param.get("code").getClass().getName() == "java.util.ArrayList") {
  232. param.put("codes", param.get("code"));
  233. // 如果是数组,那么调用多个的查询
  234. Map<String, Map<String, String>> settingMap = commonMapper.getSettingValues(param);
  235. // 定义返回值
  236. JSONObject object = JSONObject.parseObject(((PGobject) settingMap.get("f_get_setting_values")).getValue());
  237. return ResponseResultUtil.success(object);
  238. } else {
  239. // 单个
  240. String setting = commonMapper.getSettingValue(param);
  241. // 定义返回值
  242. return ResponseResultUtil.success(setting);
  243. }
  244. }
  245. /**
  246. * @desc : 查询系统参数分类
  247. * @author : 夏常明
  248. * @date : 2023/1/30 16:05
  249. */
  250. public ResponseResultVO<List<Map<String, Object>>> getSettingKind(Map<String, Object> param) {
  251. // 获取系统基础数据
  252. List<Map<String, Object>> list = commonMapper.getSettingKind(param);
  253. return ResponseResultUtil.success(list);
  254. }
  255. /**
  256. * @desc : 设置分页参数
  257. * @author : 姜宁
  258. * @date : 2023/2/1 14:00
  259. */
  260. private Map<String, Object> getLimit(Map<String, Object> param) {
  261. if (param.get("limit") != null) {
  262. param.put("currentPage", 1);
  263. param.put("pageSize", param.get("limit"));
  264. }
  265. param.put("start", ((int) param.get("currentPage") - 1) * (int) param.get("pageSize"));
  266. param.put("end", param.get("pageSize"));
  267. // 选择对象的时候用
  268. if (param.get("supplier-customerList")!=null
  269. && param.get("supplier-customerList")!=""
  270. && !(param.get("supplier-customerList") + "").contains(",") ){
  271. param.put("objType", Integer.parseInt(param.get("supplier-customerList").toString()) );
  272. }
  273. return param;
  274. }
  275. /**
  276. * @desc : 获取数据字典
  277. * @author : 姜宁
  278. * @date : 2023/2/7 14:47
  279. */
  280. public ResponseResultVO<List<Map<String, Object>>> getDictionaryData(Map<String, Object> param) {
  281. // 获取数据字典
  282. List<Map<String, Object>> list = commonMapper.getDictionaryData(param);
  283. return ResponseResultUtil.success(list);
  284. }
  285. /**
  286. * @desc : 获取用户隐藏列信息
  287. * @author : 周兴
  288. * @date : 2023/4/4 15:05
  289. */
  290. public ResponseResultVO<List<Map<String, Object>>> getUserTableInfo(Map<String, Object> param) {
  291. return ResponseResultUtil.success(commonMapper.getUserTableInfo(param));
  292. }
  293. /**
  294. * @desc : 获取用户功能
  295. * @author : 周兴
  296. * @date : 2023/4/4 15:05
  297. */
  298. public ResponseResultVO<List<Map<String, Object>>> getUserFunction(Map<String, Object> param) {
  299. return ResponseResultUtil.success(commonMapper.getUserFunction(param));
  300. }
  301. /**
  302. * @desc : 查导航菜单(自定义报表用)
  303. * @author : 周兴
  304. * @date : 2023/4/4 15:05
  305. */
  306. public ResponseResultVO<List<Map<String, Object>>> getMenuNavigation(Map<String, Object> param) {
  307. return ResponseResultUtil.success(commonMapper.getMenuNavigation(param));
  308. }
  309. /**
  310. * @desc : 获取数据类型
  311. * @author : 周兴
  312. * @date : 2023/6/2 11:01
  313. */
  314. public ResponseResultVO<List<Map<String, Object>>> getValueKind(Map<String, Object> param) {
  315. return ResponseResultUtil.success(commonMapper.getValueKind(param));
  316. }
  317. /**
  318. * @desc : 获取应用
  319. * @author : 洪旭东
  320. * @date : 2023-06-30 14:56
  321. */
  322. public ResponseResultVO<List<Map<String, String>>> getApplication() {
  323. return ResponseResultUtil.success(commonMapper.getApplication());
  324. }
  325. /**
  326. * @desc : 获取单据
  327. * @author : 周兴
  328. * @date : 2023/9/14 11:06
  329. */
  330. public ResponseResultVO<List<Map<String, Object>>> getDoc(Map<String, Object> param) {
  331. return ResponseResultUtil.success(commonMapper.getDoc(param));
  332. }
  333. /**
  334. * @desc : 获取商品
  335. * @author : 姜宁
  336. * @date : 2023/1/9 13:50
  337. */
  338. public ResponseResultVO<List<Map<String, Object>>> getGoods(Map<String, Object> param) {
  339. // 获取系统基础数据
  340. List<Map<String, Object>> list = commonMapper.getGoods(param);
  341. return ResponseResultUtil.success(list);
  342. }
  343. /**
  344. * @desc : 获取商品数量
  345. * @author : 姜宁
  346. * @date : 2023/1/29 17:01
  347. */
  348. public ResponseResultVO<PageList<Map<String, Object>>> getGoodsPage(Map<String, Object> param) {
  349. // 校验分页参数
  350. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  351. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  352. }
  353. // 分页参数赋值
  354. param = this.getLimit(param);
  355. return super.mergeListWithCount(param, commonMapper.getGoods(param),
  356. commonMapper.getGoodsCountByPage(param));
  357. }
  358. /**
  359. * @desc : 获取商品(销售订单开单用)
  360. * @author : 付斌
  361. * @date : 2024-03-09 9:57
  362. */
  363. public ResponseResultVO<List<Map<String, Object>>> getGoodsForOrder(Map<String, Object> param) {
  364. // 获取系统基础数据
  365. List<Map<String, Object>> list = commonMapper.getGoodsForOrder(param);
  366. return ResponseResultUtil.success(list);
  367. }
  368. /**
  369. * @desc : 获取商品(销售订单开单用)(分页)
  370. * @author : 付斌
  371. * @date : 2024-03-09 9:57
  372. */
  373. public ResponseResultVO<PageList<Map<String, Object>>> getGoodsForOrderByPage(Map<String, Object> param) {
  374. // 校验分页参数
  375. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  376. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  377. }
  378. // 分页参数赋值
  379. param = this.getLimit(param);
  380. return super.mergeListWithCount(param, commonMapper.getGoodsForOrder(param),
  381. commonMapper.getGoodsForOrderCountByPage(param));
  382. }
  383. /**
  384. * @desc : 获取商品(采购订单开单用)
  385. * @author : 常皓宁
  386. * @date : 2024/3/9 10:08
  387. */
  388. public ResponseResultVO<List<Map<String, Object>>> getGoodsForPurchase(Map<String, Object> param) {
  389. // 获取系统基础数据
  390. List<Map<String, Object>> list = commonMapper.getGoodsForPurchase(param);
  391. return ResponseResultUtil.success(list);
  392. }
  393. /**
  394. * @desc : 获取商品(采购订单开单用)(分页)
  395. * @author : 常皓宁
  396. * @date : 2024/3/9 10:08
  397. */
  398. public ResponseResultVO<PageList<Map<String, Object>>> getGoodsForPurchaseByPage(Map<String, Object> param) {
  399. // 校验分页参数
  400. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  401. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  402. }
  403. // 分页参数赋值
  404. param = this.getLimit(param);
  405. return super.mergeListWithCount(param, commonMapper.getGoodsForPurchase(param),
  406. commonMapper.getGoodsForPurchaseCountByPage(param));
  407. }
  408. /**
  409. * @desc : 获取客户
  410. * @author : 付斌
  411. * @date : 2024-03-09 9:55
  412. */
  413. public ResponseResultVO<List<Map<String, Object>>> getCustomer(Map<String, Object> param) {
  414. // 获取系统基础数据
  415. List<Map<String, Object>> list = commonMapper.getCustomer(param);
  416. return ResponseResultUtil.success(list);
  417. }
  418. /**
  419. * @desc : 获取客户(分页)
  420. * @author : 付斌
  421. * @date : 2024-03-09 9:55
  422. */
  423. public ResponseResultVO<PageList<Map<String, Object>>> GetCustomerByPage(Map<String, Object> param) {
  424. // 校验分页参数
  425. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  426. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  427. }
  428. // 分页参数赋值
  429. param = this.getLimit(param);
  430. return super.mergeListWithCount(param, commonMapper.getCustomer(param),
  431. commonMapper.getCustomerCountByPage(param));
  432. }
  433. /**
  434. * @desc : 获取供应商
  435. * @author : 常皓宁
  436. * @date : 2024/3/1 9:20
  437. */
  438. public ResponseResultVO<List<Map<String, Object>>> getSupplier(Map<String, Object> param) {
  439. // 获取公司
  440. List<Map<String, Object>> list = commonMapper.getSupplier(param);
  441. return ResponseResultUtil.success(list);
  442. }
  443. /**
  444. * @desc : 获取供应商(分页)
  445. * @author : 常皓宁
  446. * @date : 2024/3/1 9:20
  447. */
  448. public ResponseResultVO<PageList<Map<String, Object>>> getSupplierByPage(Map<String, Object> param) {
  449. // 校验分页参数
  450. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  451. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  452. }
  453. // 分页参数赋值
  454. param = this.getLimit(param);
  455. // 定义返回值
  456. PageList data = new PageList<>();
  457. // 获取供应商
  458. List<Map<String, Object>> list = commonMapper.getSupplier(param);
  459. // 获取总数量
  460. Long total = commonMapper.countSupplier(param);
  461. // 组装返回值
  462. data.setPageSize((int) param.get("pageSize")).setCurrentPage((int) param.get("currentPage")).setList(list).setTotal(total);
  463. return ResponseResultUtil.success(data);
  464. }
  465. /**
  466. * @desc : 获取渠道
  467. * @author : 付斌
  468. * @date : 2024-03-02 10:18
  469. */
  470. public ResponseResultVO<List<Map<String, Object>>> getChannel(Map<String, Object> param) {
  471. // 获取公司
  472. List<Map<String, Object>> list = commonMapper.getChannel(param);
  473. return ResponseResultUtil.success(list);
  474. }
  475. /**
  476. * @desc : 获取商品品牌(分页)
  477. * @author : 王英杰
  478. * @date : 2024/3/1 9:20
  479. */
  480. public ResponseResultVO<PageList<Map<String, Object>>> goodsBrandListBy(Map<String, Object> param) {
  481. // 校验分页参数
  482. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  483. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  484. }
  485. // 分页参数赋值
  486. param = this.getLimit(param);
  487. // 定义返回值
  488. PageList data = new PageList<>();
  489. // 获取公司
  490. List<Map<String, Object>> list = commonMapper.getGoodsBrand(param);
  491. // 获取总数量
  492. Long total = commonMapper.countGoodsBrand(param);
  493. // 组装返回值
  494. data.setPageSize((int) param.get("pageSize")).setCurrentPage((int) param.get("currentPage")).setList(list).setTotal(total);
  495. return ResponseResultUtil.success(data);
  496. }
  497. /**
  498. * @desc : 获取商品种类(分页)
  499. * @author : 王英杰
  500. * @date : 2024/3/1 9:20
  501. */
  502. public ResponseResultVO<PageList<Map<String, Object>>> goodsCategoryListBy(Map<String, Object> param) {
  503. // 校验分页参数
  504. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  505. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  506. }
  507. // 分页参数赋值
  508. param = this.getLimit(param);
  509. // 定义返回值
  510. PageList data = new PageList<>();
  511. // 获取公司
  512. List<Map<String, Object>> list = commonMapper.getGoodsCategory(param);
  513. // 获取总数量
  514. Long total = commonMapper.countGoodsCategory(param);
  515. // 组装返回值
  516. data.setPageSize((int) param.get("pageSize")).setCurrentPage((int) param.get("currentPage")).setList(list).setTotal(total);
  517. return ResponseResultUtil.success(data);
  518. }
  519. /**
  520. * @desc : 获取商品系列(分页)
  521. * @author : 王英杰
  522. * @date : 2024/3/1 9:20
  523. */
  524. public ResponseResultVO<PageList<Map<String, Object>>> goodsSeriesListBy(Map<String, Object> param) {
  525. // 校验分页参数
  526. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  527. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  528. }
  529. // 分页参数赋值
  530. param = this.getLimit(param);
  531. // 定义返回值
  532. PageList data = new PageList<>();
  533. // 获取公司
  534. List<Map<String, Object>> list = commonMapper.getGoodsSeries(param);
  535. // 获取总数量
  536. Long total = commonMapper.countGoodsSeries(param);
  537. // 组装返回值
  538. data.setPageSize((int) param.get("pageSize")).setCurrentPage((int) param.get("currentPage")).setList(list).setTotal(total);
  539. return ResponseResultUtil.success(data);
  540. }
  541. /**
  542. * @desc : 计量单位查询(分页)
  543. * @author : 王英杰
  544. * @date : 2024/3/1 9:20
  545. */
  546. public ResponseResultVO<PageList<Map<String, Object>>> unitListBy(Map<String, Object> param) {
  547. // 校验分页参数
  548. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  549. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  550. }
  551. // 分页参数赋值
  552. param = this.getLimit(param);
  553. // 定义返回值
  554. PageList data = new PageList<>();
  555. // 获取公司
  556. List<Map<String, Object>> list = commonMapper.getUnit(param);
  557. // 获取总数量
  558. Long total = commonMapper.countUnit(param);
  559. // 组装返回值
  560. data.setPageSize((int) param.get("pageSize")).setCurrentPage((int) param.get("currentPage")).setList(list).setTotal(total);
  561. return ResponseResultUtil.success(data);
  562. }
  563. /**
  564. * @desc : 获取仓库档案
  565. * @author : 王英杰
  566. * @date :2024/3/1 9:20
  567. */
  568. public ResponseResultVO<PageList<Map<String, Object>>> getWarehouseByPage(Map<String, Object> param) {
  569. this.getLimit(param);
  570. return super.mergeListWithCount(param, commonMapper.getWarehouseByPage(param),
  571. commonMapper.countWarehouseByPage(param));
  572. }
  573. /**
  574. * @desc : 获取仓库
  575. * @author : 常皓宁
  576. * @date : 2024/3/4 10:50
  577. */
  578. public ResponseResultVO<List<Map<String, Object>>> getWarehouse(Map<String, Object> param) {
  579. // 获取仓库
  580. List<Map<String, Object>> list = commonMapper.getWarehouse(param);
  581. return ResponseResultUtil.success(list);
  582. }
  583. /**
  584. * @desc : 查询库存
  585. * @author : 付斌
  586. * @date : 2024-03-05 10:52
  587. */
  588. public ResponseResultVO<List<Map<String, Object>>> getInventory(Map<String, Object> param) {
  589. // 获取系统基础数据
  590. List<Map<String, Object>> list = commonMapper.getInventory(param);
  591. return ResponseResultUtil.success(list);
  592. }
  593. /**
  594. * @desc : 查询库存 返回数组 条件数组
  595. * @author : 付斌
  596. * @date : 2024-03-05 10:52
  597. */
  598. public ResponseResultVO<List<Map<String, Object>>> getInventoryByList(Map<String, Object> param) {
  599. // 获取系统基础数据
  600. List<Map<String, Object>> list = commonMapper.getInventoryByList(param);
  601. return ResponseResultUtil.success(list);
  602. }
  603. /**
  604. * @desc : 查询库存(分页)
  605. * @author : 付斌
  606. * @date : 2024-03-05 10:52
  607. */
  608. public ResponseResultVO<PageList<Map<String, Object>>> getInventoryByPage(Map<String, Object> param) {
  609. // 校验分页参数
  610. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  611. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  612. }
  613. // 分页参数赋值
  614. param = this.getLimit(param);
  615. return super.mergeListWithCount(param, commonMapper.getInventory(param),
  616. commonMapper.getInventoryCountByPage(param));
  617. }
  618. /**
  619. * @desc : 商品种类查询
  620. * @author : 于继渤
  621. * @date : 2024/2/26 10:36
  622. */
  623. public ResponseResultVO<List<Map<String, Object>>> getGoodsCategoryNoPage(Map<String, Object> param) {
  624. List<Map<String, Object>> list = commonMapper.getGoodsCategory(param);
  625. return ResponseResultUtil.success(list);
  626. } /**
  627. * @desc : 商品种类查询 树形
  628. * @author : 王英杰
  629. * @date : 2024/2/26 10:36
  630. */
  631. public ResponseResultVO<List<Map<String, Object>>> getGoodsCategoryTree(Map<String, Object> param) {
  632. List<Map<String, Object>> list = commonMapper.getGoodsCategoryTree(param);
  633. return ResponseResultUtil.success(list);
  634. }
  635. /**
  636. * @desc : 获取页面数据源集合 (小程序用)
  637. * @author : 于继渤
  638. * @date : 2024/2/26 10:36
  639. */
  640. public ResponseResultVO<List<Map<String, Object>>> getInitData(Map<String, Object> param) {
  641. //判断前台是否传 dataSourceCode
  642. if (!param.containsKey("dataSourceCode") && param.get("dataSourceCode") == null) {
  643. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.DATASOURCECODE_NOT.getMessage());
  644. }
  645. String dataSourceCode = param.get("dataSourceCode").toString();
  646. //查询到的结果集
  647. List<Map<String, Object>> list = null;
  648. Map<String, Object> map = new HashMap<>();
  649. //客户来源
  650. if (dataSourceCode.equals("customerFrom")) {
  651. map.put("dictCode","基础资料-来源");
  652. list = commonMapper.getDictionaryData(map);
  653. }
  654. // 基础资料的信息 入库原因
  655. if (dataSourceCode.equals("baseData")) {
  656. map.put("dictCode",param.get("dictCode").toString()); // 需要前台传过dictCode
  657. if (!param.containsKey("dictCode") && param.get("dictCode") == null) {
  658. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.DATASOURCECODE_NOT.getMessage());
  659. }
  660. list = commonMapper.getDictionaryData(map);
  661. }
  662. //销售渠道
  663. if (dataSourceCode.equals("saleChannel")) {
  664. list = commonMapper.getSaleChannel(map);
  665. }
  666. //销售渠道
  667. if (dataSourceCode.equals("saleChannelPurviewType")) {
  668. list = commonMapper.getSaleChannelPurviewType(param);
  669. }
  670. //部门
  671. if (dataSourceCode.equals("org")) {
  672. list = commonMapper.getOrg(map);
  673. }
  674. //品牌
  675. if (dataSourceCode.equals("brand")) {
  676. list = commonMapper.getGoodsBrand(map);
  677. }
  678. //员工
  679. if (dataSourceCode.equals("staff")) {
  680. list = commonMapper.getStaff(map);
  681. }
  682. //员工
  683. if (dataSourceCode.equals("staffPurviewType")) {
  684. list = commonMapper.getStaffPurviewType(param);
  685. }
  686. //仓库
  687. if (dataSourceCode.equals("warehouse")) {
  688. list = commonMapper.getWarehouse(map);
  689. }
  690. //角色
  691. if (dataSourceCode.equals("role")) {
  692. list = commonMapper.getRole(map);
  693. }
  694. //客户意向
  695. if (dataSourceCode.equals("customerIntention")) {
  696. map.put("kindType","客户意向");
  697. list = commonMapper.getDataKind(map);
  698. }
  699. //留店时长
  700. if (dataSourceCode.equals("storeRetentionTime")) {
  701. map.put("kindType","留店时长");
  702. list = commonMapper.getDataKind(map);
  703. }
  704. //邀约结果
  705. if (dataSourceCode.equals("inviteResult")) {
  706. map.put("kindType","邀约结果");
  707. list = commonMapper.getDataKind(map);
  708. }
  709. //量尺状态
  710. if (dataSourceCode.equals("scaleStatus")) {
  711. map.put("kindType","量尺状态");
  712. list = commonMapper.getDataKind(map);
  713. }
  714. //跟进方式
  715. if (dataSourceCode.equals("followType")) {
  716. map.put("kindType","跟进方式");
  717. list = commonMapper.getDataKind(map);
  718. }
  719. return ResponseResultUtil.success(list);
  720. }
  721. /**
  722. * @desc : 获取供应商和客户数据
  723. * @date : 2024/3/13 15:09
  724. * @author : 寇珊珊
  725. */
  726. public ResponseResultVO<List<Map<String, Object>>> getSupplierAndCustomer(Map<String, Object> param) {
  727. // 获取供应商和客户
  728. List<Map<String, Object>> list = commonMapper.getSupplierAndCustomer(param);
  729. return ResponseResultUtil.success(list);
  730. }
  731. /**
  732. * @desc : 获取供应商和客户数据(分页)
  733. * @date : 2024/3/13 14:02
  734. * @author : 寇珊珊
  735. */
  736. public ResponseResultVO<PageList<Map<String, Object>>> getSupplierAndCustomerByPage(Map<String, Object> param) {
  737. // 校验分页参数
  738. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  739. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  740. }
  741. // 定义返回值
  742. PageList<Map<String, Object>> data = new PageList<>();
  743. // 分页参数赋值
  744. param = this.getLimit(param);
  745. // 获取客户
  746. List<Map<String, Object>> list = commonMapper.getSupplierAndCustomerByPage(param);
  747. // 获取总数量
  748. Long total = commonMapper.getSupplierAndCustomerByPageCount(param);
  749. // 组装返回值
  750. data.setPageSize((int) param.get("pageSize")).setCurrentPage((int) param.get("currentPage")).setList(list).setTotal(total);
  751. return ResponseResultUtil.success(data);
  752. }
  753. /**
  754. * @desc : 获取组织机构
  755. * @date : 2024/3/13 17:01
  756. * @author : 寇珊珊
  757. */
  758. public ResponseResultVO<List<Map<String, Object>>> getOrganization(Map<String, Object> param) {
  759. // 获取组织机构
  760. List<Map<String, Object>> list = commonMapper.getOrganization(param);
  761. return ResponseResultUtil.success(list);
  762. }
  763. /**
  764. * @desc : 获取组织机构(分页)
  765. * @date : 2024/3/13 17:01
  766. * @author : 寇珊珊
  767. */
  768. public ResponseResultVO<PageList<Map<String, Object>>> getOrganizationByPage(Map<String, Object> param) {
  769. // 校验分页参数
  770. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  771. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  772. }
  773. // 定义返回值
  774. PageList<Map<String, Object>> data = new PageList<>();
  775. // 分页参数赋值
  776. param = this.getLimit(param);
  777. // 获取组织机构
  778. List<Map<String, Object>> list = commonMapper.getOrganizationByPage(param);
  779. // 获取总数量
  780. Long total = commonMapper.getOrganizationCount(param);
  781. // 组装返回值
  782. data.setPageSize((int) param.get("pageSize")).setCurrentPage((int) param.get("currentPage")).setList(list).setTotal(total);
  783. return ResponseResultUtil.success(data);
  784. }
  785. /**
  786. * @desc : 获取资金账户(下拉)
  787. * @author : 付斌
  788. * @date : 2024-03-14 11:34
  789. */
  790. public ResponseResultVO<List<Map<String, Object>>> getMac(Map<String, Object> param) {
  791. // 获取组织机构
  792. List<Map<String, Object>> list = commonMapper.getMac(param);
  793. return ResponseResultUtil.success(list);
  794. }
  795. /**
  796. * @desc : 获取资金账户(放大镜)
  797. * @author : 付斌
  798. * @date : 2024-03-05 10:50
  799. */
  800. public ResponseResultVO<List<Map<String, Object>>> getMoneyAccount(Map<String, Object> param) {
  801. // 获取系统基础数据
  802. List<Map<String, Object>> list = commonMapper.getMoneyAccount(param);
  803. return ResponseResultUtil.success(list);
  804. }
  805. /**
  806. * @desc : 获取资金账户(放大镜分页)
  807. * @author : 付斌
  808. * @date : 2024-03-05 10:50
  809. */
  810. public ResponseResultVO<PageList<Map<String, Object>>> getMoneyAccountByPage(Map<String, Object> param) {
  811. // 校验分页参数
  812. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  813. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  814. }
  815. // 分页参数赋值
  816. param = this.getLimit(param);
  817. return super.mergeListWithCount(param, commonMapper.getMoneyAccount(param),
  818. commonMapper.getMoneyAccountCountByPage(param));
  819. }
  820. /**
  821. * @desc : 获取多业务部门
  822. * @author : 付斌
  823. * @date : 2024-03-20 16:54
  824. */
  825. public ResponseResultVO<List<Map<String, Object>>> selectMultiOrg(Map<String, Object> param) {
  826. List<Map<String, Object>> list = commonMapper.selectMultiOrg(param);
  827. return ResponseResultUtil.success(list);
  828. }
  829. /**
  830. * @desc : 获取多业务员
  831. * @author : 付斌
  832. * @date : 2024-03-20 16:54
  833. */
  834. public ResponseResultVO<List<Map<String, Object>>> selectMultiStaff(Map<String, Object> param) {
  835. List<Map<String, Object>> list = commonMapper.selectMultiStaff(param);
  836. return ResponseResultUtil.success(list);
  837. }
  838. /**
  839. * @desc : 组织仓库
  840. * @author : 宋扬
  841. * @date : 2024/3/22 15:47
  842. */
  843. public ResponseResultVO<List<Map<String, Object>>> selectMultiWarehouse(Map<String, Object> param) {
  844. List<Map<String, Object>> list = commonMapper.selectMultiWarehouse(param);
  845. return ResponseResultUtil.success(list);
  846. }
  847. /**
  848. * @desc : 组织资金账户
  849. * @author : 宋扬
  850. * @date : 2024/3/22 15:54
  851. */
  852. public ResponseResultVO<List<Map<String, Object>>> selectMultiMoneyAccount(Map<String, Object> param) {
  853. List<Map<String, Object>> list = commonMapper.selectMultiMoneyAccount(param);
  854. return ResponseResultUtil.success(list);
  855. }
  856. /**
  857. * @desc : 获取商品(采购订单开单用)
  858. * @author : 常皓宁
  859. * @date : 2024/3/9 10:08
  860. */
  861. public ResponseResultVO<List<Map<String, Object>>> getGoodsForPurchaseReturn(Map<String, Object> param) {
  862. // 获取系统基础数据
  863. List<Map<String, Object>> list = commonMapper.getGoodsForPurchaseReturn(param);
  864. return ResponseResultUtil.success(list);
  865. }
  866. /**
  867. * @desc : 获取商品(采购订单开单用)(分页)
  868. * @author : 常皓宁
  869. * @date : 2024/3/9 10:08
  870. */
  871. public ResponseResultVO<PageList<Map<String, Object>>> getGoodsForPurchaseReturnByPage(Map<String, Object> param) {
  872. // 校验分页参数
  873. if (param.get("pageSize") == null || param.get("currentPage") == null) {
  874. return ResponseResultUtil.error(ResponseCodeEnum.OPERATE_FAIL, "请检查分页参数!");
  875. }
  876. // 分页参数赋值
  877. param = this.getLimit(param);
  878. return super.mergeListWithCount(param, commonMapper.getGoodsForPurchaseReturn(param),
  879. commonMapper.getGoodsForPurchaseReturnByPage(param));
  880. }
  881. /**
  882. * @desc : 获取员工的范围权限类型
  883. * @author : 常皓宁
  884. * @date : 2024/4/2 10:06
  885. */
  886. public ResponseResultVO<List<Map<String, Object>>> getPurviewType(Map<String, Object> param) {
  887. // 获取供应商和客户
  888. List<Map<String, Object>> list = commonMapper.getPurviewType(param);
  889. return ResponseResultUtil.success(list);
  890. }
  891. /**
  892. * @desc : 获取组织仓库
  893. * @author : 付斌
  894. * @date : 2024-04-10 13:30
  895. */
  896. public ResponseResultVO<List<Map<String, Object>>> getOrgWh(Map<String, Object> param) {
  897. List<Map<String, Object>> list = commonMapper.getOrgWh(param);
  898. return ResponseResultUtil.success(list);
  899. }
  900. public ResponseResultVO<List<Map<String, Object>>> getLabelPrintItem(Map<String, Object> param) {
  901. return ResponseResultUtil.success(commonMapper.getLabelPrintItem(param));
  902. }
  903. }