Browse Source

Merge remote-tracking branch 'origin/master'

master
ligaode 4 months ago
parent
commit
5d7a377090
  1. 10
      anrui-scm/anrui-scm-ui/src/api/bikerebate/bicyclerebatecheck.js
  2. 10
      anrui-scm/anrui-scm-ui/src/api/bikerebate/bicyclerebatewithholding.js
  3. 10
      anrui-scm/anrui-scm-ui/src/api/specialrebate/specialrebatecheck.js
  4. 10
      anrui-scm/anrui-scm-ui/src/api/specialrebate/specialrebatewithholding.js
  5. 27
      anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatecheckInfo.vue
  6. 27
      anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatewithholding/bicyclerebatewithholdingInfo.vue
  7. 27
      anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatecheckInfo.vue
  8. 27
      anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatewithholding/specialrebatewithholdingInfo.vue
  9. 27
      anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/danchefanliheduiYiBanInfo.vue
  10. 27
      anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliyutiFlow/danchefanliyutiYiBanInfo.vue
  11. 27
      anrui-scm/anrui-scm-ui/src/views/workFlow/zhuanxiangfanliheduiFlow/zhuanxiangfanliheduiYiBanInfo.vue
  12. 27
      anrui-scm/anrui-scm-ui/src/views/workFlow/zhuanxiangfanliyutiFlow/zhuanxiangfanliyutiYiBanInfo.vue
  13. 6
      yxt-oa/src/main/java/com/yxt/anrui/oa/api/OaMendApplyRest.java
  14. 2
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaappendix/OaAppendixMapper.java
  15. 10
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaappendix/OaAppendixMapper.xml
  16. 4
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaappendix/OaAppendixService.java
  17. 4
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaForm.java
  18. 3
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormDto.java
  19. 4
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormMapper.java
  20. 16
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormMapper.xml
  21. 7
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java
  22. 20
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsMapper.java
  23. 4
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsMapper.xml
  24. 90
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsService.java
  25. 66
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApply.java
  26. 60
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyDto.java
  27. 1110
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyService.java
  28. 1
      yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/flowable/SubmitOaMendApplyDto.java

10
anrui-scm/anrui-scm-ui/src/api/bikerebate/bicyclerebatecheck.js

@ -98,6 +98,16 @@ export default {
method: 'get' method: 'get'
}) })
}, },
// 导出
downloadExcel: function(data) {
return request({
url: '/scm/v1/scmvehrebatecheckapply/excelList',
method: 'post',
params: data,
responseType: 'blob', // 表明返回服务器返回的数据类型
headers: { 'Content-Type': 'application/json' }
})
},
createPdf: function(data) { createPdf: function(data) {
return request({ return request({
url: '/scm/v1/scmvehrebatecheckapply/createPdf', url: '/scm/v1/scmvehrebatecheckapply/createPdf',

10
anrui-scm/anrui-scm-ui/src/api/bikerebate/bicyclerebatewithholding.js

@ -51,6 +51,16 @@ export default {
method: 'get' method: 'get'
}) })
}, },
// 导出
downloadExcel: function(data) {
return request({
url: '/scm/v1/scmvehrebatewith/excelList',
method: 'post',
params: data,
responseType: 'blob', // 表明返回服务器返回的数据类型
headers: { 'Content-Type': 'application/json' }
})
},
createPdf: function(data) { createPdf: function(data) {
return request({ return request({
url: '/scm/v1/scmvehrebatewithapply/createPdf', url: '/scm/v1/scmvehrebatewithapply/createPdf',

10
anrui-scm/anrui-scm-ui/src/api/specialrebate/specialrebatecheck.js

@ -98,6 +98,16 @@ export default {
method: 'get' method: 'get'
}) })
}, },
// 导出
downloadExcel: function(data) {
return request({
url: '/scm/v1/scmspecialrebatecheckapply/excelList',
method: 'post',
params: data,
responseType: 'blob', // 表明返回服务器返回的数据类型
headers: { 'Content-Type': 'application/json' }
})
},
createPdf: function(data) { createPdf: function(data) {
return request({ return request({
url: '/scm/v1/scmspecialrebatecheckapply/createPdf', url: '/scm/v1/scmspecialrebatecheckapply/createPdf',

10
anrui-scm/anrui-scm-ui/src/api/specialrebate/specialrebatewithholding.js

@ -51,6 +51,16 @@ export default {
method: 'get' method: 'get'
}) })
}, },
// 导出
downloadExcel: function(data) {
return request({
url: '/scm/v1/scmspecialrebatewith/excelList',
method: 'post',
params: data,
responseType: 'blob', // 表明返回服务器返回的数据类型
headers: { 'Content-Type': 'application/json' }
})
},
createPdf: function(data) { createPdf: function(data) {
return request({ return request({
url: '/scm/v1/scmspecialrebatewithapply/createPdf', url: '/scm/v1/scmspecialrebatewithapply/createPdf',

27
anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatecheckInfo.vue

@ -7,7 +7,7 @@
<div>{{ viewTitle }}</div> <div>{{ viewTitle }}</div>
<!--start 添加修改按钮--> <!--start 添加修改按钮-->
<div> <div>
<el-button type="primary" size="small">导出</el-button> <el-button type="primary" size="small" @click="doExport">导出</el-button>
<el-button type="primary" size="small" @click="download">下载</el-button> <el-button type="primary" size="small" @click="download">下载</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button> <el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div> </div>
@ -184,6 +184,31 @@ export default {
}) })
return sums return sums
}, },
doExport() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.downloadExcel({ sid: this.formobj.sid }).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '单车返利核对明细' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'none'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
download() { download() {
req.createPdf({ vehCheckSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => { req.createPdf({ vehCheckSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => {
if (resp.success && resp.data !== '') { if (resp.success && resp.data !== '') {

27
anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatewithholding/bicyclerebatewithholdingInfo.vue

@ -7,7 +7,7 @@
<div>{{ viewTitle }}</div> <div>{{ viewTitle }}</div>
<!--start 添加修改按钮--> <!--start 添加修改按钮-->
<div> <div>
<el-button type="primary" size="small">导出</el-button> <el-button type="primary" size="small" @click="doExport">导出</el-button>
<el-button type="primary" size="small" @click="download">下载</el-button> <el-button type="primary" size="small" @click="download">下载</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button> <el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div> </div>
@ -163,6 +163,31 @@ export default {
}) })
return sums return sums
}, },
doExport() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.downloadExcel({ sid: this.formobj.sid }).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '单车返利预提明细' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'none'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
download() { download() {
req.createPdf({ vehWithSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => { req.createPdf({ vehWithSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => {
if (resp.success && resp.data !== '') { if (resp.success && resp.data !== '') {

27
anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatecheck/specialrebatecheckInfo.vue

@ -7,7 +7,7 @@
<div>{{ viewTitle }}</div> <div>{{ viewTitle }}</div>
<!--start 添加修改按钮--> <!--start 添加修改按钮-->
<div> <div>
<el-button type="primary" size="small">导出</el-button> <el-button type="primary" size="small" @click="doExport">导出</el-button>
<el-button type="primary" size="small" @click="download">下载</el-button> <el-button type="primary" size="small" @click="download">下载</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button> <el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div> </div>
@ -183,6 +183,31 @@ export default {
}) })
return sums return sums
}, },
doExport() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.downloadExcel({ sid: this.formobj.sid }).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '专项返利核对明细' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'none'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
download() { download() {
req.createPdf({ specialCheckSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => { req.createPdf({ specialCheckSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => {
if (resp.success && resp.data !== '') { if (resp.success && resp.data !== '') {

27
anrui-scm/anrui-scm-ui/src/views/specialrebate/specialrebatewithholding/specialrebatewithholdingInfo.vue

@ -7,7 +7,7 @@
<div>{{ viewTitle }}</div> <div>{{ viewTitle }}</div>
<!--start 添加修改按钮--> <!--start 添加修改按钮-->
<div> <div>
<el-button type="primary" size="small">导出</el-button> <el-button type="primary" size="small" @click="doExport">导出</el-button>
<el-button type="primary" size="small" @click="download">下载</el-button> <el-button type="primary" size="small" @click="download">下载</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button> <el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div> </div>
@ -191,6 +191,31 @@ export default {
}) })
return sums return sums
}, },
doExport() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.downloadExcel({ sid: this.formobj.sid }).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '专项返利预提明细' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'none'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
download() { download() {
req.createPdf({ specialWithSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => { req.createPdf({ specialWithSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => {
if (resp.success && resp.data !== '') { if (resp.success && resp.data !== '') {

27
anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/danchefanliheduiYiBanInfo.vue

@ -7,7 +7,7 @@
<div>{{ viewTitle }}</div> <div>{{ viewTitle }}</div>
<!--start 添加修改按钮--> <!--start 添加修改按钮-->
<div> <div>
<el-button type="primary" size="small">导出</el-button> <el-button type="primary" size="small" @click="doExport">导出</el-button>
<el-button type="primary" size="small" @click="download">下载</el-button> <el-button type="primary" size="small" @click="download">下载</el-button>
<el-button type="danger" size="small" @click="openRevoke()">撤回</el-button> <el-button type="danger" size="small" @click="openRevoke()">撤回</el-button>
</div> </div>
@ -220,6 +220,31 @@ export default {
}) })
return sums return sums
}, },
doExport() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.downloadExcel({ sid: this.formobj.sid }).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '单车返利核对明细' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'none'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
download() { download() {
req.createPdf({ vehCheckSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => { req.createPdf({ vehCheckSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => {
if (resp.success && resp.data !== '') { if (resp.success && resp.data !== '') {

27
anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliyutiFlow/danchefanliyutiYiBanInfo.vue

@ -7,7 +7,7 @@
<div>{{ viewTitle }}</div> <div>{{ viewTitle }}</div>
<!--start 添加修改按钮--> <!--start 添加修改按钮-->
<div> <div>
<el-button type="primary" size="small">导出</el-button> <el-button type="primary" size="small" @click="doExport">导出</el-button>
<el-button type="primary" size="small" @click="download">下载</el-button> <el-button type="primary" size="small" @click="download">下载</el-button>
<el-button type="danger" size="small" @click="openRevoke()">撤回</el-button> <el-button type="danger" size="small" @click="openRevoke()">撤回</el-button>
</div> </div>
@ -155,6 +155,31 @@ export default {
resetState() { resetState() {
this.viewState = 1 this.viewState = 1
}, },
doExport() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.downloadExcel({ sid: this.formobj.sid }).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '单车返利预提明细' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'none'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
download() { download() {
req.createPdf({ vehWithSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => { req.createPdf({ vehWithSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => {
if (resp.success && resp.data !== '') { if (resp.success && resp.data !== '') {

27
anrui-scm/anrui-scm-ui/src/views/workFlow/zhuanxiangfanliheduiFlow/zhuanxiangfanliheduiYiBanInfo.vue

@ -7,7 +7,7 @@
<div>{{ viewTitle }}</div> <div>{{ viewTitle }}</div>
<!--start 添加修改按钮--> <!--start 添加修改按钮-->
<div> <div>
<el-button type="primary" size="small">导出</el-button> <el-button type="primary" size="small" @click="doExport">导出</el-button>
<el-button type="primary" size="small" @click="download">下载</el-button> <el-button type="primary" size="small" @click="download">下载</el-button>
<el-button type="danger" size="small" @click="openRevoke()">撤回</el-button> <el-button type="danger" size="small" @click="openRevoke()">撤回</el-button>
</div> </div>
@ -219,6 +219,31 @@ export default {
}) })
return sums return sums
}, },
doExport() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.downloadExcel({ sid: this.formobj.sid }).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '专项返利核对明细' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'none'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
download() { download() {
req.createPdf({ specialCheckSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => { req.createPdf({ specialCheckSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => {
if (resp.success && resp.data !== '') { if (resp.success && resp.data !== '') {

27
anrui-scm/anrui-scm-ui/src/views/workFlow/zhuanxiangfanliyutiFlow/zhuanxiangfanliyutiYiBanInfo.vue

@ -7,7 +7,7 @@
<div>{{ viewTitle }}</div> <div>{{ viewTitle }}</div>
<!--start 添加修改按钮--> <!--start 添加修改按钮-->
<div> <div>
<el-button type="primary" size="small">导出</el-button> <el-button type="primary" size="small" @click="doExport">导出</el-button>
<el-button type="primary" size="small" @click="download">下载</el-button> <el-button type="primary" size="small" @click="download">下载</el-button>
<el-button type="danger" size="small" @click="openRevoke()">撤回</el-button> <el-button type="danger" size="small" @click="openRevoke()">撤回</el-button>
</div> </div>
@ -226,6 +226,31 @@ export default {
}) })
return sums return sums
}, },
doExport() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.downloadExcel({ sid: this.formobj.sid }).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '专项返利预提明细' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'none'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
download() { download() {
req.createPdf({ specialWithSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => { req.createPdf({ specialWithSid: this.formobj.sid, userName: window.sessionStorage.getItem('name') }).then((resp) => {
if (resp.success && resp.data !== '') { if (resp.success && resp.data !== '') {

6
yxt-oa/src/main/java/com/yxt/anrui/oa/api/OaMendApplyRest.java

@ -74,10 +74,8 @@ public class OaMendApplyRest {
@ApiOperation("新增或修改") @ApiOperation("新增或修改")
@PostMapping("/save") @PostMapping("/save")
public ResultBean save(@RequestBody OaMendApplyDto dto){ public ResultBean<String> save(@RequestBody OaMendApplyDto dto){
ResultBean rb = ResultBean.fireFail(); return oaMendApplyService.saveOrUpdateDto(dto);
oaMendApplyService.saveOrUpdateDto(dto);
return rb.success();
} }
@ApiOperation("根据sid批量删除") @ApiOperation("根据sid批量删除")

2
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaappendix/OaAppendixMapper.java

@ -36,4 +36,6 @@ public interface OaAppendixMapper extends BaseMapper<OaAppendix> {
@Select("select * from oa_appendix where linkSid = #{linkSid}") @Select("select * from oa_appendix where linkSid = #{linkSid}")
List<OaAppendix> fetchByLinkSid(String linkSid); List<OaAppendix> fetchByLinkSid(String linkSid);
int deleteByLinkSid(String sid);
} }

10
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaappendix/OaAppendixMapper.xml

@ -1,6 +1,12 @@
<?xml version="1.0" encoding="UTF-8" ?> <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.anrui.oa.biz.oaappendix.OaAppendixMapper"> <mapper namespace="com.yxt.anrui.oa.biz.oaappendix.OaAppendixMapper">
<!-- <where> ${ew.sqlSegment} </where>--> <!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} --> <!-- ${ew.customSqlSegment} -->
<delete id="deleteByLinkSid">
delete
from oa_appendix
where linkSid = #{sid}
</delete>
</mapper> </mapper>

4
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaappendix/OaAppendixService.java

@ -36,4 +36,8 @@ public class OaAppendixService extends MybatisBaseService<OaAppendixMapper, OaAp
public List<OaAppendix> fetchByLinkSid(String linkSid) { public List<OaAppendix> fetchByLinkSid(String linkSid) {
return baseMapper.fetchByLinkSid(linkSid); return baseMapper.fetchByLinkSid(linkSid);
} }
public int deleteByLinkSid(String sid) {
return baseMapper.deleteByLinkSid(sid);
}
} }

4
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaForm.java

@ -44,10 +44,6 @@ public class OaForm extends BaseEntity {
private String createOrgSid; private String createOrgSid;
@ApiModelProperty("创建组织") @ApiModelProperty("创建组织")
private String createOrgName; private String createOrgName;
@ApiModelProperty("图片,冗余字段")
private String imgs;
@ApiModelProperty("附件,冗余字段")
private String appendixs;
@ApiModelProperty("关联审批单") @ApiModelProperty("关联审批单")
private String linkFormSids; private String linkFormSids;

3
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormDto.java

@ -15,9 +15,10 @@ import java.util.Date;
public class OaFormDto { public class OaFormDto {
private String sid; private String sid;
private String createBySid;
@ApiModelProperty("创建人") @ApiModelProperty("创建人")
private String createByName; private String createByName;
private String billNo;
@ApiModelProperty("公司sid") @ApiModelProperty("公司sid")
private String useOrgSid; private String useOrgSid;
@ApiModelProperty("公司名称") @ApiModelProperty("公司名称")

4
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormMapper.java

@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.Map;
/** /**
* @description: * @description:
* @author: dimengzhe * @author: dimengzhe
@ -17,4 +19,6 @@ public interface OaFormMapper extends BaseMapper<OaForm> {
OaFormDetailsVo fetchDetailsBySid(String sid); OaFormDetailsVo fetchDetailsBySid(String sid);
IPage<OaFormVo> selectPageVo(IPage<OaForm> page, @Param(Constants.WRAPPER) QueryWrapper<OaForm> qw); IPage<OaFormVo> selectPageVo(IPage<OaForm> page, @Param(Constants.WRAPPER) QueryWrapper<OaForm> qw);
int updateFlowFiled(Map<String, Object> map);
} }

16
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormMapper.xml

@ -15,4 +15,20 @@
${ew.sqlSegment} ${ew.sqlSegment}
</where> </where>
</select> </select>
<update id="updateFlowFiled">
UPDATE oa_form
SET nodeState=#{nodeState}
, nodeId=#{taskDefKey}
<if test="procDefId != null and procDefId != ''">
, procDefId=#{procDefId}
</if>
<if test="procInsId != null and procInsId != ''">
, procInstId=#{procInsId}
</if>
<if test="taskId != null and taskId != ''">
, taskId=#{taskId}
</if>
WHERE sid = #{sid}
</update>
</mapper> </mapper>

7
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oaform/OaFormService.java

@ -7,6 +7,7 @@ import com.yxt.anrui.oa.biz.oahireapply.OaHireApplyDetailsVo;
import com.yxt.anrui.oa.biz.oaleaveapply.OaLeaveApply; import com.yxt.anrui.oa.biz.oaleaveapply.OaLeaveApply;
import com.yxt.anrui.oa.biz.oaleaveapply.OaLeaveApplyQuery; import com.yxt.anrui.oa.biz.oaleaveapply.OaLeaveApplyQuery;
import com.yxt.anrui.oa.biz.oaleaveapply.OaLeaveApplyVo; import com.yxt.anrui.oa.biz.oaleaveapply.OaLeaveApplyVo;
import com.yxt.anrui.oa.feign.flowable.flow.UpdateFlowFieldVo;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.StringUtils; import com.yxt.common.base.utils.StringUtils;
@ -16,6 +17,8 @@ import com.yxt.common.core.vo.PagerVo;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.Map;
/** /**
* @description: * @description:
* @author: dimengzhe * @author: dimengzhe
@ -62,4 +65,8 @@ public class OaFormService extends MybatisBaseService<OaFormMapper, OaForm> {
delBySids(sids); delBySids(sids);
return rb.success(); return rb.success();
} }
public int updateFlow(Map<String, Object> map) {
return baseMapper.updateFlowFiled(map);
}
} }

20
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsMapper.java

@ -32,8 +32,6 @@ import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetails;
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsVo;
import java.util.List; import java.util.List;
@ -53,13 +51,13 @@ import java.util.List;
@Mapper @Mapper
public interface OaHireDetailsMapper extends BaseMapper<OaHireDetails> { public interface OaHireDetailsMapper extends BaseMapper<OaHireDetails> {
//@Update("update oa_hire_details set name=#{msg} where id=#{id}") //@Update("update oa_hire_details set name=#{msg} where id=#{id}")
//IPage<OaHireDetailsVo> voPage(IPage<OaHireDetails> page, @Param(Constants.WRAPPER) QueryWrapper<OaHireDetails> qw); //IPage<OaHireDetailsVo> voPage(IPage<OaHireDetails> page, @Param(Constants.WRAPPER) QueryWrapper<OaHireDetails> qw);
IPage<OaHireDetailsVo> selectPageVo(IPage<OaHireDetails> page, @Param(Constants.WRAPPER) Wrapper<OaHireDetails> qw); IPage<OaHireDetailsVo> selectPageVo(IPage<OaHireDetails> page, @Param(Constants.WRAPPER) Wrapper<OaHireDetails> qw);
List<OaHireDetailsVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<OaHireDetails> qw); List<OaHireDetailsVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<OaHireDetails> qw);
@Select("select * from oa_hire_details") @Select("select * from oa_hire_details")
List<OaHireDetailsVo> selectListVo(); List<OaHireDetailsVo> selectListVo();
} }

4
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsMapper.xml

@ -3,11 +3,11 @@
<mapper namespace="com.yxt.anrui.oa.biz.oahiredetails.OaHireDetailsMapper"> <mapper namespace="com.yxt.anrui.oa.biz.oahiredetails.OaHireDetailsMapper">
<!-- <where> ${ew.sqlSegment} </where>--> <!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} --> <!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsVo"> <select id="selectPageVo" resultType="com.yxt.anrui.oa.biz.oahiredetails.OaHireDetailsVo">
SELECT * FROM oa_hire_details <where> ${ew.sqlSegment} </where> SELECT * FROM oa_hire_details <where> ${ew.sqlSegment} </where>
</select> </select>
<select id="selectListAllVo" resultType="com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsVo"> <select id="selectListAllVo" resultType="com.yxt.anrui.oa.biz.oahiredetails.OaHireDetailsVo">
SELECT * FROM oa_hire_details <where> ${ew.sqlSegment} </where> SELECT * FROM oa_hire_details <where> ${ew.sqlSegment} </where>
</select> </select>
</mapper> </mapper>

90
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oahiredetails/OaHireDetailsService.java

@ -34,12 +34,6 @@ import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetails;
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsQuery;
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsVo;
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsDetailsVo;
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsDto;
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsFeign;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -60,51 +54,51 @@ import java.util.List;
*/ */
@Service @Service
public class OaHireDetailsService extends MybatisBaseService<OaHireDetailsMapper, OaHireDetails> { public class OaHireDetailsService extends MybatisBaseService<OaHireDetailsMapper, OaHireDetails> {
private QueryWrapper<OaHireDetails> createQueryWrapper(OaHireDetailsQuery query) { private QueryWrapper<OaHireDetails> createQueryWrapper(OaHireDetailsQuery query) {
// todo: 这里根据具体业务调整查询条件 // todo: 这里根据具体业务调整查询条件
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName())); // 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
QueryWrapper<OaHireDetails> qw = new QueryWrapper<>(); QueryWrapper<OaHireDetails> qw = new QueryWrapper<>();
return qw; return qw;
} }
public PagerVo<OaHireDetailsVo> listPageVo(PagerQuery<OaHireDetailsQuery> pq) { public PagerVo<OaHireDetailsVo> listPageVo(PagerQuery<OaHireDetailsQuery> pq) {
OaHireDetailsQuery query = pq.getParams(); OaHireDetailsQuery query = pq.getParams();
QueryWrapper<OaHireDetails> qw = createQueryWrapper(query); QueryWrapper<OaHireDetails> qw = createQueryWrapper(query);
IPage<OaHireDetails> page = PagerUtil.queryToPage(pq); IPage<OaHireDetails> page = PagerUtil.queryToPage(pq);
IPage<OaHireDetailsVo> pagging = baseMapper.selectPageVo(page, qw); IPage<OaHireDetailsVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<OaHireDetailsVo> p = PagerUtil.pageToVo(pagging, null); PagerVo<OaHireDetailsVo> p = PagerUtil.pageToVo(pagging, null);
return p; return p;
} }
public void saveOrUpdateDto(OaHireDetailsDto dto){ public void saveOrUpdateDto(OaHireDetailsDto dto) {
String dtoSid = dto.getSid(); String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) { if (StringUtils.isBlank(dtoSid)) {
this.insertByDto(dto); this.insertByDto(dto);
return; return;
} }
this.updateByDto(dto); this.updateByDto(dto);
} }
public void insertByDto(OaHireDetailsDto dto){ public void insertByDto(OaHireDetailsDto dto) {
OaHireDetails entity = new OaHireDetails(); OaHireDetails entity = new OaHireDetails();
BeanUtil.copyProperties(dto, entity, "id", "sid"); BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.insert(entity); baseMapper.insert(entity);
} }
public void updateByDto(OaHireDetailsDto dto){ public void updateByDto(OaHireDetailsDto dto) {
String dtoSid = dto.getSid(); String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) { if (StringUtils.isBlank(dtoSid)) {
return; return;
} }
OaHireDetails entity = fetchBySid(dtoSid); OaHireDetails entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid"); BeanUtil.copyProperties(dto, entity, "id", "sid");
baseMapper.updateById(entity); baseMapper.updateById(entity);
} }
public OaHireDetailsDetailsVo fetchDetailsVoBySid(String sid){ public OaHireDetailsDetailsVo fetchDetailsVoBySid(String sid) {
OaHireDetails entity = fetchBySid(sid); OaHireDetails entity = fetchBySid(sid);
OaHireDetailsDetailsVo vo = new OaHireDetailsDetailsVo(); OaHireDetailsDetailsVo vo = new OaHireDetailsDetailsVo();
BeanUtil.copyProperties(entity, vo); BeanUtil.copyProperties(entity, vo);
return vo; return vo;
} }
} }

66
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApply.java

@ -25,14 +25,18 @@
*********************************************************/ *********************************************************/
package com.yxt.anrui.oa.biz.oamendapply; package com.yxt.anrui.oa.biz.oamendapply;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.anrui.oa.biz.oaform.OaForm; import com.yxt.anrui.oa.biz.oaform.OaForm;
import com.yxt.common.core.domain.BaseEntity; import com.yxt.common.core.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date; import java.util.Date;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.springframework.data.annotation.Transient;
/** /**
* Project: yxt-oa(补卡申请) <br/> * Project: yxt-oa(补卡申请) <br/>
@ -50,35 +54,41 @@ import lombok.Data;
@Data @Data
@ApiModel(value = "补卡申请", description = "补卡申请") @ApiModel(value = "补卡申请", description = "补卡申请")
@TableName("oa_mend_apply") @TableName("oa_mend_apply")
public class OaMendApply extends OaForm { public class OaMendApply extends BaseEntity {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
private String formSid; private String formSid;
@ApiModelProperty("单据编号") @ApiModelProperty("补卡时间")
private String billNo; // 单据编号 private String time;
@ApiModelProperty("申请人")
private String createByName; // 申请人 @TableField(exist = false)
@ApiModelProperty("申请部门sid") private OaForm oaForm = new OaForm();
private String deptSid; // 申请部门sid
@ApiModelProperty("申请部门名称")
private String deptName; // 申请部门名称 /* @ApiModelProperty("单据编号")
@ApiModelProperty("补卡时间") private String billNo;
private String time; // 补卡时间 @ApiModelProperty("申请人")
@ApiModelProperty("分公司sid") private String createByName;
private String useOrgSid; // 分公司sid @ApiModelProperty("申请部门sid")
@ApiModelProperty("分公司名称") private String deptSid;
private String useOrgName; // 分公司名称 @ApiModelProperty("申请部门名称")
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") private String deptName;
@ApiModelProperty("办结日期")
private Date finishTime; // 办结日期 @ApiModelProperty("分公司sid")
@ApiModelProperty("实例id") private String useOrgSid;
private String procInstId; // 实例id @ApiModelProperty("分公司名称")
@ApiModelProperty("流程定义id") private String useOrgName;
private String procDefId; // 流程定义id @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("任务id") @ApiModelProperty("办结日期")
private String taskId; // 任务id private Date finishTime;
@ApiModelProperty("环节id") @ApiModelProperty("实例id")
private String nodeId; // 环节id private String procInstId;
@ApiModelProperty("流程状态") @ApiModelProperty("流程定义id")
private String nodeState; // 流程状态 private String procDefId;
@ApiModelProperty("任务id")
private String taskId;
@ApiModelProperty("环节id")
private String nodeId;
@ApiModelProperty("流程状态")
private String nodeState;*/
} }

60
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyDto.java

@ -55,39 +55,41 @@ import lombok.Data;
@ApiModel(value = "补卡申请 数据传输对象", description = "补卡申请 数据传输对象") @ApiModel(value = "补卡申请 数据传输对象", description = "补卡申请 数据传输对象")
public class OaMendApplyDto implements Dto { public class OaMendApplyDto implements Dto {
private String sid; // sid private static final long serialVersionUID = -4536006302677264298L;
private String userSid; private String sid;
private String createBySid;
private String orgPath; private String orgPath;
@ApiModelProperty("补卡原因") @ApiModelProperty("补卡原因")
private String remarks; private String remarks;
@ApiModelProperty("单据编号") @ApiModelProperty("补卡时间")
private String time;
@ApiModelProperty("图片")
private List<String> files = new ArrayList<>();
/* @ApiModelProperty("单据编号")
private String billNo; // 单据编号 private String billNo; // 单据编号
@ApiModelProperty("申请人") @ApiModelProperty("申请人")
private String createByName; // 申请人 private String createByName;
@ApiModelProperty("申请部门sid") @ApiModelProperty("申请部门sid")
private String deptSid; // 申请部门sid private String deptSid;
@ApiModelProperty("申请部门名称") @ApiModelProperty("申请部门名称")
private String deptName; // 申请部门名称 private String deptName;
@ApiModelProperty("补卡时间")
private String time; // 补卡时间 @ApiModelProperty("分公司sid")
@ApiModelProperty("分公司sid") private String useOrgSid;
private String useOrgSid; // 分公司sid @ApiModelProperty("分公司名称")
@ApiModelProperty("分公司名称") private String useOrgName;
private String useOrgName; // 分公司名称 @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
@ApiModelProperty("办结日期") @ApiModelProperty("办结日期")
private Date finishTime; private Date finishTime;
@ApiModelProperty("实例id") @ApiModelProperty("实例id")
private String procInstId; // 实例id private String procInstId;
@ApiModelProperty("流程定义id") @ApiModelProperty("流程定义id")
private String procDefId; // 流程定义id private String procDefId;
@ApiModelProperty("任务id") @ApiModelProperty("任务id")
private String taskId; // 任务id private String taskId;
@ApiModelProperty("环节id") @ApiModelProperty("环节id")
private String nodeId; // 环节id private String nodeId;
@ApiModelProperty("流程状态") @ApiModelProperty("流程状态")
private String nodeState; // 流程状态 private String nodeState;*/
@ApiModelProperty("图片")
private List<String> files = new ArrayList<>();
} }

1110
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/OaMendApplyService.java

File diff suppressed because it is too large

1
yxt-oa/src/main/java/com/yxt/anrui/oa/biz/oamendapply/flowable/SubmitOaMendApplyDto.java

@ -16,6 +16,7 @@ import lombok.Data;
@Data @Data
public class SubmitOaMendApplyDto extends OaMendApplyDto { public class SubmitOaMendApplyDto extends OaMendApplyDto {
private static final long serialVersionUID = 8607710587497609779L;
@ApiModelProperty("意见") @ApiModelProperty("意见")
private String comment; private String comment;
@ApiModelProperty("流程实例id") @ApiModelProperty("流程实例id")

Loading…
Cancel
Save