You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

124 lines
4.9 KiB

5 years ago
5 years ago
5 years ago
  1. import axios from '@/utils/request'
  2. import config from '@/common/config'
  3. let base=config.getSysBasePath();
  4. /**
  5. * 数据项取值列表
  6. *1 默认只开放普通查询所有查询只要上传 分页参数 {currentPage:当前页码从1开始,pageSize:每页记录数,total:总记录数如果是0后台会自动计算总记录数非0不会自动计算}后台都会自动按分页查询 其它 api用到再打开没用到的api请注释掉
  7. *2 查询新增修改的参数格式 params={id:'主键 主键',itemId:'数据项编号',optionValue:'选项值',optionName:'选项名称',keys:'快捷键',isShow:'是否显示',seqOrder:'顺序',fp:'第一扩展字段',tp:'第三扩展字段',sp:'第二扩展字段',isDefault:'是否默认',cdate:'创建日期',branchId:'机构编号',deptid:'部门编号'}
  8. **/
  9. //普通查询 条件之间and关系
  10. export const listItemOption = params => { return axios.get(`${base}/mdp/meta/itemOption/list`, { params: params }); };
  11. //普通查询 条件之间and关系 params=[{categoryId:'0001',itemCode:'sex'}] 返回结果 {'sex':[{optionValue:'1',optionName:'男',seqOrder:'1',fp:'',isDefault:'0'},{optionValue:'2',optionName:'女',seqOrder:'2',fp:'',isDefault:'0'}]}
  12. export const listOption = params => {
  13. var date=new Date();
  14. var dateStr=date.getFullYear()+"-"+date.getMonth()+"-"+date.getDay()
  15. var result={
  16. data:{
  17. tips:{
  18. isOk:true,
  19. },
  20. data:{
  21. }
  22. }
  23. }
  24. var noExistsParams=params.filter(i=>{
  25. var key=i.categoryId+"-"+i.itemCode+"-"+dateStr;
  26. var options = localStorage.getItem(key);
  27. if(options){
  28. result.data.data[i.itemCode]=JSON.parse(options)
  29. return false
  30. }return true;
  31. });
  32. return new Promise((resolve,reject) => {
  33. if(noExistsParams.length>0){
  34. axios.post(`${base}/mdp/meta/itemOption/list/byItemCode`, noExistsParams ).then(res=>{
  35. var tips = res.data.tips;
  36. if(tips.isOk){
  37. var data=res.data.data;
  38. noExistsParams.forEach(k=>{
  39. var key=k.categoryId+"-"+k.itemCode+"-"+dateStr;
  40. localStorage.setItem(key, JSON.stringify(data[k.itemCode]));
  41. result.data.data[k.itemCode]= data[k.itemCode]
  42. })
  43. }else{
  44. result.data.tips=tips;
  45. }
  46. resolve(result);
  47. }).catch(e=>reject(e));
  48. }else{
  49. resolve(result);
  50. }
  51. });
  52. };
  53. export const listOptionByItemIds = params => {
  54. var date=new Date();
  55. var dateStr=date.getFullYear()+"-"+date.getMonth()+"-"+date.getDay()
  56. var result={
  57. data:{
  58. tips:{
  59. isOk:true,
  60. },
  61. data:{
  62. }
  63. }
  64. }
  65. var noExistsParams=params.filter(i=>{
  66. var key=i+"-"+dateStr;
  67. var options = localStorage.getItem(key);
  68. if(options){
  69. var optionsJson=JSON.parse(options);
  70. result.data.data[i]=optionsJson
  71. return false
  72. }return true;
  73. });
  74. return new Promise((resolve,reject) => {
  75. if(noExistsParams.length>0){
  76. axios.post(`${base}/mdp/meta/itemOption/listItemOptionByItemIds`, noExistsParams ).then(res=>{
  77. var tips = res.data.tips;
  78. if(tips.isOk){
  79. var data=res.data.data;
  80. noExistsParams.forEach(k=>{
  81. var key= k+"-"+dateStr;
  82. localStorage.setItem(key, JSON.stringify(data[k]));
  83. result.data.data[k]= data[k]
  84. })
  85. }else{
  86. result.data.tips=tips;
  87. }
  88. resolve(result);
  89. }).catch(e=>reject(e));
  90. }else{
  91. resolve(result);
  92. }
  93. });
  94. };
  95. //params={id:''} 返回 {optionValue:'1',optionName:'男',seqOrder:'1',fp:'',isDefault:'0'}
  96. export const getSysParam = params => { return axios.post(`${base}/mdp/meta/itemOption/sysParam`, params ); };
  97. //模糊查询数据项取值列表 条件之间or关系
  98. //export const listItemOptionKey = params => { return axios.get(`${base}/mdp/meta/itemOption/listKey`, { params: params }); };
  99. //删除一条数据项取值列表 params={id:'主键 主键'}
  100. export const delItemOption = params => { return axios.post(`${base}/mdp/meta/itemOption/del`,params); };
  101. //批量删除数据项取值列表 params=[{id:'主键 主键'}]
  102. export const batchDelItemOption = params => { return axios.post(`${base}/mdp/meta/itemOption/batchDel`, params); };
  103. //修改一条数据项取值列表记录
  104. export const editItemOption = params => { return axios.post(`${base}/mdp/meta/itemOption/edit`, params); };
  105. //新增一条数据项取值列表
  106. export const addItemOption = params => { return axios.post(`${base}/mdp/meta/itemOption/add`, params); };