diff --git a/bin/clean b/bin/clean new file mode 100755 index 00000000..2f3d3e51 --- /dev/null +++ b/bin/clean @@ -0,0 +1 @@ +mvn clean \ No newline at end of file diff --git a/bin/clean.bat b/bin/clean.bat index 24c09741..578e77da 100644 --- a/bin/clean.bat +++ b/bin/clean.bat @@ -1,6 +1,6 @@ @echo off echo. -echo [信息] 清理工程target生成路径。 +echo [淇℃伅] 娓呯悊宸ョ▼target鐢熸垚璺緞銆 echo. %~d0 diff --git a/bin/mac-auth b/bin/mac-auth new file mode 100755 index 00000000..0bae0f1b --- /dev/null +++ b/bin/mac-auth @@ -0,0 +1 @@ +java -Dfile.encoding=utf-8 -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -jar yanzhu-auth/target/yanzhu-auth.jar \ No newline at end of file diff --git a/bin/mac-gateway b/bin/mac-gateway new file mode 100755 index 00000000..e246881e --- /dev/null +++ b/bin/mac-gateway @@ -0,0 +1 @@ +java -Dfile.encoding=utf-8 -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -jar yanzhu-gateway/target/yanzhu-gateway.jar diff --git a/bin/mac-modules-file b/bin/mac-modules-file new file mode 100755 index 00000000..1aead7e6 --- /dev/null +++ b/bin/mac-modules-file @@ -0,0 +1 @@ +java -Dfile.encoding=utf-8 -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -jar yanzhu-modules/yanzhu-file/target/yanzhu-modules-file.jar diff --git a/bin/mac-modules-gen b/bin/mac-modules-gen new file mode 100755 index 00000000..1dcb2054 --- /dev/null +++ b/bin/mac-modules-gen @@ -0,0 +1 @@ +java -Dfile.encoding=utf-8 -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -jar ruoyi-modules/ruoyi-gen/target/yanzhu-modules-gen.jar diff --git a/bin/mac-modules-job b/bin/mac-modules-job new file mode 100755 index 00000000..b14bcb55 --- /dev/null +++ b/bin/mac-modules-job @@ -0,0 +1 @@ +java -Dfile.encoding=utf-8 -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -jar ruoyi-modules/ruoyi-job/target/yanzhu-modules-job.jar diff --git a/bin/mac-modules-manage b/bin/mac-modules-manage new file mode 100755 index 00000000..d24a5513 --- /dev/null +++ b/bin/mac-modules-manage @@ -0,0 +1 @@ +java -Dfile.encoding=utf-8 -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -jar yanzhu-modules/yanzhu-manage/target/yanzhu-modules-manage.jar diff --git a/bin/mac-modules-system b/bin/mac-modules-system new file mode 100755 index 00000000..c53efb1e --- /dev/null +++ b/bin/mac-modules-system @@ -0,0 +1 @@ +java -Dfile.encoding=utf-8 -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -jar yanzhu-modules/yanzhu-system/target/yanzhu-modules-system.jar diff --git a/bin/mac-monitor b/bin/mac-monitor new file mode 100755 index 00000000..00a50133 --- /dev/null +++ b/bin/mac-monitor @@ -0,0 +1 @@ +java -Dfile.encoding=utf-8 -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -jar ruoyi-visual/ruoyi-monitor/target/yanzhu-visual-monitor.jar diff --git a/bin/package b/bin/package new file mode 100755 index 00000000..502174cd --- /dev/null +++ b/bin/package @@ -0,0 +1 @@ +mvn clean package -Dmaven.test.skip=true \ No newline at end of file diff --git a/bin/package.bat b/bin/package.bat index c693ec06..735b65ea 100644 --- a/bin/package.bat +++ b/bin/package.bat @@ -1,6 +1,6 @@ @echo off echo. -echo [信息] 打包Web工程,生成war/jar包文件。 +echo [淇℃伅] 鎵撳寘Web宸ョ▼锛岀敓鎴恮ar/jar鍖呮枃浠躲 echo. %~d0 diff --git a/bin/run-auth.bat b/bin/run-auth.bat index 050c48c3..41cff3fe 100644 --- a/bin/run-auth.bat +++ b/bin/run-auth.bat @@ -1,7 +1,5 @@ @echo off -echo. -echo [锟斤拷息] 使锟斤拷Jar锟斤拷锟斤拷锟斤拷锟斤拷Auth锟斤拷锟教★拷 -echo. + cd %~dp0 cd ../yanzhu-auth/target diff --git a/bin/run-gateway.bat b/bin/run-gateway.bat index bb58985f..bde43131 100644 --- a/bin/run-gateway.bat +++ b/bin/run-gateway.bat @@ -1,7 +1,5 @@ @echo off -echo. -echo [锟斤拷息] 使锟斤拷Jar锟斤拷锟斤拷锟斤拷锟斤拷Gateway锟斤拷锟教★拷 -echo. + cd %~dp0 cd ../yanzhu-gateway/target diff --git a/bin/run-modules-file.bat b/bin/run-modules-file.bat index 4db62b7a..b69b1c15 100644 --- a/bin/run-modules-file.bat +++ b/bin/run-modules-file.bat @@ -1,7 +1,5 @@ @echo off -echo. -echo [锟斤拷息] 使锟斤拷Jar锟斤拷锟斤拷锟斤拷锟斤拷Modules-File锟斤拷锟教★拷 -echo. + cd %~dp0 cd ../yanzhu-modules/yanzhu-file/target diff --git a/bin/run-modules-gen.bat b/bin/run-modules-gen.bat index 7b9cea1b..1f6f05eb 100644 --- a/bin/run-modules-gen.bat +++ b/bin/run-modules-gen.bat @@ -1,7 +1,4 @@ @echo off -echo. -echo [锟斤拷息] 使锟斤拷Jar锟斤拷锟斤拷锟斤拷锟斤拷Modules-Gen锟斤拷锟教★拷 -echo. cd %~dp0 cd ../ruoyi-modules/ruoyi-gen/target diff --git a/bin/run-modules-job.bat b/bin/run-modules-job.bat index fa88e955..e56ab30c 100644 --- a/bin/run-modules-job.bat +++ b/bin/run-modules-job.bat @@ -1,7 +1,5 @@ @echo off -echo. -echo [锟斤拷息] 使锟斤拷Jar锟斤拷锟斤拷锟斤拷锟斤拷Modules-Job锟斤拷锟教★拷 -echo. + cd %~dp0 cd ../ruoyi-modules/ruoyi-job/target diff --git a/bin/run-modules-manage.bat b/bin/run-modules-manage.bat index 01b26e20..12ae8e22 100644 --- a/bin/run-modules-manage.bat +++ b/bin/run-modules-manage.bat @@ -1,7 +1,5 @@ @echo off -echo. -echo [ 息] 使 Jar Modules-System 獭 -echo. + cd %~dp0 cd ../yanzhu-modules/yanzhu-manage/target diff --git a/bin/run-modules-system.bat b/bin/run-modules-system.bat index 652a3aa2..69bca826 100644 --- a/bin/run-modules-system.bat +++ b/bin/run-modules-system.bat @@ -1,7 +1,5 @@ @echo off -echo. -echo [锟斤拷息] 使锟斤拷Jar锟斤拷锟斤拷锟斤拷锟斤拷Modules-System锟斤拷锟教★拷 -echo. + cd %~dp0 cd ../yanzhu-modules/yanzhu-system/target diff --git a/bin/run-monitor.bat b/bin/run-monitor.bat index 17c42ffc..53bf2be3 100644 --- a/bin/run-monitor.bat +++ b/bin/run-monitor.bat @@ -1,7 +1,5 @@ @echo off -echo. -echo [锟斤拷息] 使锟斤拷Jar锟斤拷锟斤拷锟斤拷锟斤拷Monitor锟斤拷锟教★拷 -echo. + cd %~dp0 cd ../ruoyi-visual/ruoyi-monitor/target diff --git a/yanzhu-bigscreen/src/api/detail.js b/yanzhu-bigscreen/src/api/detail.js index fa5d7d9a..9d1ef10a 100644 --- a/yanzhu-bigscreen/src/api/detail.js +++ b/yanzhu-bigscreen/src/api/detail.js @@ -99,10 +99,89 @@ const milestoneList = (data) => { }); }); }; + +const costOutputSelectYearAndMonth=(data)=> { + return new Promise(reslove=>{ + let data2={...data}; + let y=data2.year; + let m=data2.month-1; + if(m==0){ + m=12; + y--; + } + data2.year=y; + data2.month=m; + var ajaxs=[request({ + url: `/manage/costOutput/selectYearAndMonth`, + method: 'post', + data:data + }), + request({ + url: `/manage/costOutput/selectYearAndMonth`, + method: 'post', + data:data2 + })]; + + axios.all(ajaxs).then(res=>{ + let d=res[0] + const getValue=(tmps,type)=>{ + let objs=tmps.filter(d=>d.costType==type); + return objs.length>0?objs[0]:{}; + } + let tmps=(d.data||[]).map(it=>{ + it.money=it.money?it.money/10000.0:0; + return it; + }); + let y=data.year; + let m=data.month-1; + if(m==0){ + m=12; + y--; + } + let tmps2=(res[1].data||[]).map(it=>{ + it.money=it.money?it.money/10000.0:0; + return it; + }); + let curM=tmps2.filter(it=>it.costType==9 && it.year==y && it.month==m); + curM=curM.length>0?curM[0]:{}; + + let totalObjs=tmps.filter(it=>it.costType==9); + let total=0; + totalObjs.forEach(it=>{ + if(it.money){ + total+=it.money; + } + }); + let yearObjs=tmps.filter(it=>it.costType==9 && it.year==y); + let totalY=0; + yearObjs.forEach(it=>{ + if(it.money){ + totalY+=it.money; + } + }); + let obj={ + totalInv:getValue(tmps,1).money||0,//鎬绘姇璧 + curYear:getValue(tmps,2).money||0,//骞存绘姇璧 + contract1:getValue(tmps,3).money||0,//鍚堝悓閲戦 + contract2:getValue(tmps,4).money||0,//鍚堝悓鏀粯閲戦 + contract3:getValue(tmps,5).money||0,//鍚堝悓鎸傝处閲戦 + safety1:getValue(tmps,6).money||0,//瀹夋帾閲戦 + safety2:getValue(tmps,7).money||0,//瀹夋帾鏀粯閲戦 + safety3:getValue(tmps,8).money||0,//瀹夋帾鎸傝处閲戦 + curMonth:curM.money||0,//褰撴湀鎶曡祫 + totalMonth:total,//寮绱姇璧 + totalYear:totalY,//鏈勾瀹屾垚 + } + reslove(obj); + }) + }) +} + export default { groupByCraftType, groupByCraftTypeByAttendance, subdeptsUsersList, attendanceUbiDataList, milestoneList, + costOutputSelectYearAndMonth }; diff --git a/yanzhu-bigscreen/src/utils/request.js b/yanzhu-bigscreen/src/utils/request.js index bfff3fc0..812e5c20 100644 --- a/yanzhu-bigscreen/src/utils/request.js +++ b/yanzhu-bigscreen/src/utils/request.js @@ -76,7 +76,6 @@ service.interceptors.response.use(res => { return res.data } if (code === 401) { - debugger if (!isRelogin.show) { isRelogin.show = true; MessageBox.confirm('鐧诲綍鐘舵佸凡杩囨湡锛屾偍鍙互缁х画鐣欏湪璇ラ〉闈紝鎴栬呴噸鏂扮櫥褰', '绯荤粺鎻愮ず', { confirmButtonText: '閲嶆柊鐧诲綍', cancelButtonText: '鍙栨秷', type: 'warning' }).then(() => { diff --git a/yanzhu-bigscreen/src/views/projectDetail.vue b/yanzhu-bigscreen/src/views/projectDetail.vue index b66aceb1..11b4a595 100644 --- a/yanzhu-bigscreen/src/views/projectDetail.vue +++ b/yanzhu-bigscreen/src/views/projectDetail.vue @@ -224,7 +224,7 @@ 鎬绘姇璧

- {{ 1000 }} 涓囧厓 + {{ costOutData.totalInv||0 }} 涓囧厓
@@ -237,7 +237,7 @@ 鏈湀瀹屾垚

- {{ 1000 }} 涓囧厓 + {{ costOutData.curMonth||0 }} 涓囧厓
@@ -251,7 +251,7 @@ 鏈勾瀹屾垚

- {{ 1000 }} 涓囧厓 + {{ costOutData.totalYear||0 }} 涓囧厓
@@ -265,7 +265,7 @@ 寮绱畬鎴

- {{ 1000 }} 涓囧厓 + {{ costOutData.totalMonth||0 }} 涓囧厓
@@ -280,7 +280,7 @@ 璁″垝寮宸ユ棩鏈

- {{ new Date() | toDate }} + {{ selProject.scheduledStartTime | toDate }}
@@ -295,7 +295,7 @@ 璁″垝绔e伐鏃ユ湡

- {{ new Date() | toDate }} + {{ selProject.plannedCompletionTime | toDate }}
@@ -309,7 +309,7 @@ 瀹為檯寮宸ユ棩鏈

- {{ new Date() | toDate }} + {{ selProject.actualOperatingTime | toDate }}
@@ -323,7 +323,7 @@ 鍚堝悓宸ユ湡

- {{ 2100 }} 澶 + {{ selProject.projectTimeLimit||'' }}
@@ -338,7 +338,7 @@ 寤虹瓚闈㈢Н

- {{ 10000 }} 骞虫柟绫 + {{ selProject.floorArea||'' }} 骞虫柟绫
@@ -503,7 +503,6 @@ import projectInfoDialog from './detail/projectInfoDialog.vue'; import staffSurveyChart from '@/components/staffSurveyChart.vue'; import MonitAndWarning from './components/MonitAndWarning.vue'; import attendanceInfoDlg from './detail/attendanceInfoDlg.vue'; -import testData from './test/detail' import debounce from 'lodash.debounce' export default { components: { @@ -549,6 +548,7 @@ export default { projectBuildNode: [], maxWidth: 0, minWidth: 100, + costOutData:{}, } }, mounted() { @@ -615,13 +615,25 @@ export default { }); this.loadAttendanceData(); this.loadMilestoneData(); + this.loadCostOutput(); }, - loadMilestoneData() { + loadCostOutput(){ + let dt = this.$dt(new Date()); + this.$api.detail.costOutputSelectYearAndMonth({ + comId: this.selProject.comId, + projectId: this.selProject.id, + year: dt.$y, + month: dt.$M + 1, + }).then(d=>{ + this.costOutData=d; + }); + }, + loadMilestoneData() { this.$api.detail.milestoneList({ pageNum: 1, pageSize: 100, - comId: this.prjInfo.comId, - projectId: this.prjInfo.id + comId: this.selProject.comId, + projectId: this.selProject.id }).then(d => { this.projectBuildNode = d; let itemWidth = this.$dpi() == "1K" ? 200 : this.$dpi() == "2K" ? 300 : 500; @@ -638,8 +650,8 @@ export default { loadAttendanceData() { let ajax = this.$api.detail.groupByCraftType; let posData = { - comId: this.prjInfo.comId, - projectId: this.prjInfo.id + comId: this.selProject.comId, + projectId: this.selProject.id } if (this.attendanceNav == 1) { ajax = this.$api.detail.groupByCraftTypeByAttendance; diff --git a/yanzhu-common/yanzhu-common-mapper/src/main/java/com/yanzhu/manage/domain/ProVideoMonitor.java b/yanzhu-common/yanzhu-common-mapper/src/main/java/com/yanzhu/manage/domain/ProVideoMonitor.java new file mode 100644 index 00000000..7996e966 --- /dev/null +++ b/yanzhu-common/yanzhu-common-mapper/src/main/java/com/yanzhu/manage/domain/ProVideoMonitor.java @@ -0,0 +1,231 @@ +package com.yanzhu.manage.domain; + +import com.fasterxml.jackson.annotation.JsonFormat; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.yanzhu.common.core.annotation.Excel; +import com.yanzhu.common.core.web.domain.BaseEntity; + +import java.util.Date; + +/** + * 寤惰繜鎽勫奖绠$悊瀵硅薄 pro_video_monitor + * + * @author yanzhu + * @date 2024-12-25 + */ +public class ProVideoMonitor extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** $column.columnComment */ + private Long id; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private Long comId; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private Long projectId; + + /** 鐩戞帶鍚嶇О */ + @Excel(name = "鐩戞帶鍚嶇О") + private String monitorName; + + /** 鐩戞帶绫诲瀷 */ + @Excel(name = "鐩戞帶绫诲瀷") + private String monitorType; + + /** 鐩戞帶杩炴帴 */ + @Excel(name = "鐩戞帶杩炴帴") + private String url; + + /** AppKey */ + @Excel(name = "AppKey") + private String appkey; + + /** Secret */ + @Excel(name = "Secret") + private String secret; + + /** 璁惧鍘傚晢 */ + @Excel(name = "璁惧鍘傚晢") + private String manufacturer; + + /** 鏄惁鍏抽敭鐐 */ + @Excel(name = "鏄惁鍏抽敭鐐") + private Long keyPoint; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private Long state; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private Long isDel; + + /** $column.columnComment */ + @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()") + private Date upadteTime; + private String compName; + + private String projectName; + + public String getCompName() { + return compName; + } + + public void setCompName(String compName) { + this.compName = compName; + } + + public String getProjectName() { + return projectName; + } + + public void setProjectName(String projectName) { + this.projectName = projectName; + } + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setComId(Long comId) + { + this.comId = comId; + } + + public Long getComId() + { + return comId; + } + public void setProjectId(Long projectId) + { + this.projectId = projectId; + } + + public Long getProjectId() + { + return projectId; + } + public void setMonitorName(String monitorName) + { + this.monitorName = monitorName; + } + + public String getMonitorName() + { + return monitorName; + } + public void setMonitorType(String monitorType) + { + this.monitorType = monitorType; + } + + public String getMonitorType() + { + return monitorType; + } + public void setUrl(String url) + { + this.url = url; + } + + public String getUrl() + { + return url; + } + public void setAppkey(String appkey) + { + this.appkey = appkey; + } + + public String getAppkey() + { + return appkey; + } + public void setSecret(String secret) + { + this.secret = secret; + } + + public String getSecret() + { + return secret; + } + public void setManufacturer(String manufacturer) + { + this.manufacturer = manufacturer; + } + + public String getManufacturer() + { + return manufacturer; + } + public void setKeyPoint(Long keyPoint) + { + this.keyPoint = keyPoint; + } + + public Long getKeyPoint() + { + return keyPoint; + } + public void setState(Long state) + { + this.state = state; + } + + public Long getState() + { + return state; + } + public void setIsDel(Long isDel) + { + this.isDel = isDel; + } + + public Long getIsDel() + { + return isDel; + } + public void setUpadteTime(Date upadteTime) + { + this.upadteTime = upadteTime; + } + + public Date getUpadteTime() + { + return upadteTime; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("comId", getComId()) + .append("projectId", getProjectId()) + .append("monitorName", getMonitorName()) + .append("monitorType", getMonitorType()) + .append("url", getUrl()) + .append("appkey", getAppkey()) + .append("secret", getSecret()) + .append("manufacturer", getManufacturer()) + .append("keyPoint", getKeyPoint()) + .append("remark", getRemark()) + .append("state", getState()) + .append("isDel", getIsDel()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("upadteTime", getUpadteTime()) + .toString(); + } +} diff --git a/yanzhu-common/yanzhu-common-mapper/src/main/java/com/yanzhu/manage/mapper/ProVideoMonitorMapper.java b/yanzhu-common/yanzhu-common-mapper/src/main/java/com/yanzhu/manage/mapper/ProVideoMonitorMapper.java new file mode 100644 index 00000000..573e4b6c --- /dev/null +++ b/yanzhu-common/yanzhu-common-mapper/src/main/java/com/yanzhu/manage/mapper/ProVideoMonitorMapper.java @@ -0,0 +1,61 @@ +package com.yanzhu.manage.mapper; + +import java.util.List; +import com.yanzhu.manage.domain.ProVideoMonitor; + +/** + * 寤惰繜鎽勫奖绠$悊Mapper鎺ュ彛 + * + * @author yanzhu + * @date 2024-12-25 + */ +public interface ProVideoMonitorMapper +{ + /** + * 鏌ヨ寤惰繜鎽勫奖绠$悊 + * + * @param id 寤惰繜鎽勫奖绠$悊涓婚敭 + * @return 寤惰繜鎽勫奖绠$悊 + */ + public ProVideoMonitor selectProVideoMonitorById(Long id); + + /** + * 鏌ヨ寤惰繜鎽勫奖绠$悊鍒楄〃 + * + * @param proVideoMonitor 寤惰繜鎽勫奖绠$悊 + * @return 寤惰繜鎽勫奖绠$悊闆嗗悎 + */ + public List selectProVideoMonitorList(ProVideoMonitor proVideoMonitor); + + /** + * 鏂板寤惰繜鎽勫奖绠$悊 + * + * @param proVideoMonitor 寤惰繜鎽勫奖绠$悊 + * @return 缁撴灉 + */ + public int insertProVideoMonitor(ProVideoMonitor proVideoMonitor); + + /** + * 淇敼寤惰繜鎽勫奖绠$悊 + * + * @param proVideoMonitor 寤惰繜鎽勫奖绠$悊 + * @return 缁撴灉 + */ + public int updateProVideoMonitor(ProVideoMonitor proVideoMonitor); + + /** + * 鍒犻櫎寤惰繜鎽勫奖绠$悊 + * + * @param id 寤惰繜鎽勫奖绠$悊涓婚敭 + * @return 缁撴灉 + */ + public int deleteProVideoMonitorById(Long id); + + /** + * 鎵归噺鍒犻櫎寤惰繜鎽勫奖绠$悊 + * + * @param ids 闇瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎 + * @return 缁撴灉 + */ + public int deleteProVideoMonitorByIds(Long[] ids); +} diff --git a/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/ProVideoMonitorMapper.xml b/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/ProVideoMonitorMapper.xml new file mode 100644 index 00000000..8126f059 --- /dev/null +++ b/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/ProVideoMonitorMapper.xml @@ -0,0 +1,134 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + select pv.id, pv.com_id, pv.project_id, pv.monitor_name, pv.monitor_type, pv.url, pv.appkey, pv.secret, + pv.manufacturer, pv.key_point, pv.remark, pv.state, pv.is_del, pv.create_by, pv.create_time, + pv.update_by, pv.upadte_time,dp.`dept_name` comp_name,pi.`project_name` + from pro_video_monitor pv + LEFT JOIN sys_dept dp ON pv.com_id=dp.dept_id + LEFT JOIN pro_project_info pi ON pv.project_id=pi.id + + + + + + + + insert into pro_video_monitor + + com_id, + project_id, + monitor_name, + monitor_type, + url, + appkey, + secret, + manufacturer, + key_point, + remark, + state, + is_del, + create_by, + create_time, + update_by, + upadte_time, + + + #{comId}, + #{projectId}, + #{monitorName}, + #{monitorType}, + #{url}, + #{appkey}, + #{secret}, + #{manufacturer}, + #{keyPoint}, + #{remark}, + #{state}, + #{isDel}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{upadteTime}, + + + + + update pro_video_monitor + + com_id = #{comId}, + project_id = #{projectId}, + monitor_name = #{monitorName}, + monitor_type = #{monitorType}, + url = #{url}, + appkey = #{appkey}, + secret = #{secret}, + manufacturer = #{manufacturer}, + key_point = #{keyPoint}, + remark = #{remark}, + state = #{state}, + is_del = #{isDel}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + upadte_time = #{upadteTime}, + + where id = #{id} + + + + delete from pro_video_monitor where id = #{id} + + + + delete from pro_video_monitor where id in + + #{id} + + + \ No newline at end of file diff --git a/yanzhu-modules/yanzhu-gen/src/main/resources/vm/vue/v3/readme.txt b/yanzhu-modules/yanzhu-gen/src/main/resources/vm/vue/v3/readme.txt index 10362d62..cdb1c431 100644 --- a/yanzhu-modules/yanzhu-gen/src/main/resources/vm/vue/v3/readme.txt +++ b/yanzhu-modules/yanzhu-gen/src/main/resources/vm/vue/v3/readme.txt @@ -1 +1 @@ -如果使用的是RuoYi-Cloud-Vue3前端,那么需要覆盖一下此目录的模板index.vue.vm、index-tree.vue.vm文件到上级vue目录。 \ No newline at end of file +濡傛灉浣跨敤鐨勬槸RuoYi-Cloud-Vue3鍓嶇锛岄偅涔堥渶瑕佽鐩栦竴涓嬫鐩綍鐨勬ā鏉縤ndex.vue.vm銆乮ndex-tree.vue.vm鏂囦欢鍒颁笂绾ue鐩綍銆 \ No newline at end of file diff --git a/yanzhu-modules/yanzhu-manage/pom.xml b/yanzhu-modules/yanzhu-manage/pom.xml index 304df2a0..b1d2026c 100644 --- a/yanzhu-modules/yanzhu-manage/pom.xml +++ b/yanzhu-modules/yanzhu-manage/pom.xml @@ -123,7 +123,7 @@ iTextAsian 1.0.0 system - ${pom.basedir}\libs\iTextAsian-1.0.0.jar + ${pom.basedir}/libs/iTextAsian-1.0.0.jar @@ -143,7 +143,7 @@ aspose-words 15.8.0 system - ${pom.basedir}\libs\aspose-words-15.8.0-jdk16.jar + ${pom.basedir}/libs/aspose-words-15.8.0-jdk16.jar @@ -166,9 +166,13 @@ aspose-tasks 24.10 system - ${pom.basedir}\libs\aspose-tasks-24.10-jdk17.jar + ${pom.basedir}/libs/aspose-tasks-24.10-jdk17.jar + + + net.sf.mpxj + mpxj + 13.5.1 - diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProCostOutputController.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProCostOutputController.java index 45f44af7..67c1b8c2 100644 --- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProCostOutputController.java +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProCostOutputController.java @@ -142,4 +142,59 @@ public class ProCostOutputController extends BaseController Map>> list=proCostOutputService.selectForBigEnginList(where); return AjaxResult.success(list); } + + /** + * 鎸夐」鐩甀D鏌ヨ锛屽鏋滄病鏈夋暟鎹繘琛屽垵濮嬪寲 + * @param projectId + * @return + */ + @GetMapping("/listByProjectId") + public AjaxResult listByProjectId(long projectId,long comId){ + ProCostOutput where =new ProCostOutput(); + where.setProjectId(projectId); + where.setComId(comId); + List list=proCostOutputService.selectProCostOutputList(where); + if(list.size()==0){ + proCostOutputService.initProject(projectId,comId); + } + list=proCostOutputService.selectProCostOutputList(where); + return AjaxResult.success(list); + } + /** + * 澧炲姞骞村害鎶曡祫 + * @param projectId + * @param year + * @return + */ + @PostMapping("/addYearInvestment") + public AjaxResult addYearInvestment(@RequestBody ProCostOutput where){ + List list=proCostOutputService.selectProCostOutputList(where); + if(list.size()==0){ + proCostOutputService.addYearInvestment(where); + return AjaxResult.success("澧炲姞骞村害鎶曡祫鎴愬姛!"); + }else{ + return AjaxResult.error("姝ゅ勾搴︽姇璧勫凡瀛樺湪!"); + } + } + @PostMapping("/addMonthInvestment") + public AjaxResult addMonthInvestment(@RequestBody ProCostOutput where) { + List list=proCostOutputService.selectProCostOutputList(where); + if(list.size()==0){ + proCostOutputService.addMonthInvestment(where); + return AjaxResult.success("澧炲姞鏈堝害鎶曡祫鎴愬姛!"); + }else{ + return AjaxResult.error("姝ゆ湀搴︽姇璧勫凡瀛樺湪!"); + } + } + + + @PostMapping("/batchUpdate") + public AjaxResult batchUpdate(@RequestBody List list){ + try { + proCostOutputService.batchUpdate(list); + return AjaxResult.success("淇濆瓨鎴愬姛!"); + }catch (Exception ex){ + return AjaxResult.error(ex.getMessage()); + } + } } diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProVideoMonitorController.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProVideoMonitorController.java new file mode 100644 index 00000000..63027dd5 --- /dev/null +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProVideoMonitorController.java @@ -0,0 +1,144 @@ +package com.yanzhu.manage.controller; + +import java.util.List; +import java.util.concurrent.TimeUnit; +import javax.servlet.http.HttpServletResponse; + +import com.alibaba.fastjson2.JSONObject; +import com.yanzhu.common.core.utils.http.HttpUtils; +import com.yanzhu.common.core.utils.poi.ExcelUtil; +import com.yanzhu.common.core.web.controller.BaseController; +import com.yanzhu.common.core.web.domain.AjaxResult; +import com.yanzhu.common.core.web.page.TableDataInfo; +import com.yanzhu.common.log.annotation.Log; +import com.yanzhu.common.log.enums.BusinessType; +import com.yanzhu.common.redis.service.RedisService; +import com.yanzhu.common.security.annotation.RequiresPermissions; +import com.yanzhu.manage.domain.ProVideoMonitor; +import com.yanzhu.manage.service.IProVideoMonitorService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +/** + * 寤惰繜鎽勫奖绠$悊Controller + * + * @author yanzhu + * @date 2024-12-25 + */ +@RestController +@RequestMapping("/videoMonitor") +public class ProVideoMonitorController extends BaseController +{ + @Autowired + private IProVideoMonitorService proVideoMonitorService; + + /** + * 鏌ヨ寤惰繜鎽勫奖绠$悊鍒楄〃 + */ + @RequiresPermissions("manage:videoMonitor:list") + @GetMapping("/list") + public TableDataInfo list(ProVideoMonitor proVideoMonitor) + { + startPage(); + List list = proVideoMonitorService.selectProVideoMonitorList(proVideoMonitor); + return getDataTable(list); + } + + /** + * 瀵煎嚭寤惰繜鎽勫奖绠$悊鍒楄〃 + */ + @RequiresPermissions("manage:videoMonitor:export") + @Log(title = "寤惰繜鎽勫奖绠$悊", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(HttpServletResponse response, ProVideoMonitor proVideoMonitor) + { + List list = proVideoMonitorService.selectProVideoMonitorList(proVideoMonitor); + ExcelUtil util = new ExcelUtil(ProVideoMonitor.class); + util.exportExcel(response, list, "寤惰繜鎽勫奖绠$悊鏁版嵁"); + } + + /** + * 鑾峰彇寤惰繜鎽勫奖绠$悊璇︾粏淇℃伅 + */ + @RequiresPermissions("manage:videoMonitor:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(proVideoMonitorService.selectProVideoMonitorById(id)); + } + + /** + * 鏂板寤惰繜鎽勫奖绠$悊 + */ + @RequiresPermissions("manage:videoMonitor:add") + @Log(title = "寤惰繜鎽勫奖绠$悊", businessType = BusinessType.INSERT) + @PostMapping + public AjaxResult add(@RequestBody ProVideoMonitor proVideoMonitor) + { + return toAjax(proVideoMonitorService.insertProVideoMonitor(proVideoMonitor)); + } + + /** + * 淇敼寤惰繜鎽勫奖绠$悊 + */ + @RequiresPermissions("manage:videoMonitor:edit") + @Log(title = "寤惰繜鎽勫奖绠$悊", businessType = BusinessType.UPDATE) + @PutMapping + public AjaxResult edit(@RequestBody ProVideoMonitor proVideoMonitor) + { + return toAjax(proVideoMonitorService.updateProVideoMonitor(proVideoMonitor)); + } + + /** + * 鍒犻櫎寤惰繜鎽勫奖绠$悊 + */ + @RequiresPermissions("manage:videoMonitor:remove") + @Log(title = "寤惰繜鎽勫奖绠$悊", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(proVideoMonitorService.deleteProVideoMonitorByIds(ids)); + } + + + @Autowired + private RedisService redisService; + + @RequiresPermissions("manage:videoMonitor:list") + @GetMapping("/getYsToken/{id}") + public AjaxResult getYsToken(@PathVariable Long id){ + ProVideoMonitor proVideoMonitor = proVideoMonitorService.selectProVideoMonitorById(id); + if(proVideoMonitor == null){ + return AjaxResult.error("鏃犳晥ID"); + } + String key="YS_Token__"+ proVideoMonitor.getAppkey()+"_"+proVideoMonitor.getSecret(); + JSONObject jo=redisService.getCacheObject(key); + String token=""; + if(jo!=null){ + long expireTime= jo.getLong("expireTime"); + if(expireTime> System.currentTimeMillis()+1000*60){ + token=jo.getString("accessToken"); + return AjaxResult.success(token); + } + } + String postData="appKey="+proVideoMonitor.getAppkey()+"&appSecret="+proVideoMonitor.getSecret(); + String url="https://open.ys7.com/api/lapp/token/get"; + String data= HttpUtils.sendPost(url,postData); + jo=JSONObject.parseObject(data); + if("200".equals(jo.getString("code"))){ + JSONObject jobj=jo.getJSONObject("data"); + token=jobj.getString("accessToken"); + long expireTime= jobj.getLong("expireTime"); + redisService.setCacheObject(key,jobj,expireTime-System.currentTimeMillis(), TimeUnit.MICROSECONDS); + } + return AjaxResult.success(token); + } + + +} diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/IProVideoMonitorService.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/IProVideoMonitorService.java new file mode 100644 index 00000000..3e814968 --- /dev/null +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/IProVideoMonitorService.java @@ -0,0 +1,61 @@ +package com.yanzhu.manage.service; + +import java.util.List; +import com.yanzhu.manage.domain.ProVideoMonitor; + +/** + * 寤惰繜鎽勫奖绠$悊Service鎺ュ彛 + * + * @author yanzhu + * @date 2024-12-25 + */ +public interface IProVideoMonitorService +{ + /** + * 鏌ヨ寤惰繜鎽勫奖绠$悊 + * + * @param id 寤惰繜鎽勫奖绠$悊涓婚敭 + * @return 寤惰繜鎽勫奖绠$悊 + */ + public ProVideoMonitor selectProVideoMonitorById(Long id); + + /** + * 鏌ヨ寤惰繜鎽勫奖绠$悊鍒楄〃 + * + * @param proVideoMonitor 寤惰繜鎽勫奖绠$悊 + * @return 寤惰繜鎽勫奖绠$悊闆嗗悎 + */ + public List selectProVideoMonitorList(ProVideoMonitor proVideoMonitor); + + /** + * 鏂板寤惰繜鎽勫奖绠$悊 + * + * @param proVideoMonitor 寤惰繜鎽勫奖绠$悊 + * @return 缁撴灉 + */ + public int insertProVideoMonitor(ProVideoMonitor proVideoMonitor); + + /** + * 淇敼寤惰繜鎽勫奖绠$悊 + * + * @param proVideoMonitor 寤惰繜鎽勫奖绠$悊 + * @return 缁撴灉 + */ + public int updateProVideoMonitor(ProVideoMonitor proVideoMonitor); + + /** + * 鎵归噺鍒犻櫎寤惰繜鎽勫奖绠$悊 + * + * @param ids 闇瑕佸垹闄ょ殑寤惰繜鎽勫奖绠$悊涓婚敭闆嗗悎 + * @return 缁撴灉 + */ + public int deleteProVideoMonitorByIds(Long[] ids); + + /** + * 鍒犻櫎寤惰繜鎽勫奖绠$悊淇℃伅 + * + * @param id 寤惰繜鎽勫奖绠$悊涓婚敭 + * @return 缁撴灉 + */ + public int deleteProVideoMonitorById(Long id); +} diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProCostOutputServiceImpl.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProCostOutputServiceImpl.java index 02ee3180..02294c80 100644 --- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProCostOutputServiceImpl.java +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProCostOutputServiceImpl.java @@ -118,19 +118,19 @@ public class ProCostOutputServiceImpl implements IProCostOutputService insertProCostOutput(it); it.setYear(null); it.setCostType(3l);//鍚堝悓閲戦 - insertProCostOutput(it); + //insertProCostOutput(it); it.setCostType(4l);//鍚堝悓鏀粯閲戦 - insertProCostOutput(it); + //insertProCostOutput(it); it.setCostType(5l);//鍚堝悓鎸傝处閲戦 - insertProCostOutput(it); + //insertProCostOutput(it); it.setCostType(6l);//瀹夋帾閲戦 - insertProCostOutput(it); + //insertProCostOutput(it); it.setCostType(7l);//瀹夋帾鏀粯閲戦 - insertProCostOutput(it); + //insertProCostOutput(it); it.setCostType(8l);//瀹夋帾鎸傝处閲戦 - insertProCostOutput(it); + //insertProCostOutput(it); it.setCostType(10l);//寤哄畨璐归噾棰 - insertProCostOutput(it); + //insertProCostOutput(it); it.setCostType(9l);//鏈堝害鎶曡祫 it.setYear(year*1l); for(int i=1;i<=12;i++){ diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProVideoMonitorServiceImpl.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProVideoMonitorServiceImpl.java new file mode 100644 index 00000000..075b4ef5 --- /dev/null +++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProVideoMonitorServiceImpl.java @@ -0,0 +1,98 @@ +package com.yanzhu.manage.service.impl; + +import java.util.*; + +import com.yanzhu.common.core.context.SecurityContextHolder; +import com.yanzhu.common.core.utils.DateUtils; +import com.yanzhu.manage.domain.ProVideoMonitor; +import com.yanzhu.manage.mapper.ProVideoMonitorMapper; +import com.yanzhu.manage.service.IProVideoMonitorService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +/** + * 寤惰繜鎽勫奖绠$悊Service涓氬姟灞傚鐞 + * + * @author yanzhu + * @date 2024-12-25 + */ +@Service +public class ProVideoMonitorServiceImpl implements IProVideoMonitorService +{ + @Autowired + private ProVideoMonitorMapper proVideoMonitorMapper; + + /** + * 鏌ヨ寤惰繜鎽勫奖绠$悊 + * + * @param id 寤惰繜鎽勫奖绠$悊涓婚敭 + * @return 寤惰繜鎽勫奖绠$悊 + */ + @Override + public ProVideoMonitor selectProVideoMonitorById(Long id) + { + return proVideoMonitorMapper.selectProVideoMonitorById(id); + } + + /** + * 鏌ヨ寤惰繜鎽勫奖绠$悊鍒楄〃 + * + * @param proVideoMonitor 寤惰繜鎽勫奖绠$悊 + * @return 寤惰繜鎽勫奖绠$悊 + */ + @Override + public List selectProVideoMonitorList(ProVideoMonitor proVideoMonitor) + { + return proVideoMonitorMapper.selectProVideoMonitorList(proVideoMonitor); + } + + /** + * 鏂板寤惰繜鎽勫奖绠$悊 + * + * @param proVideoMonitor 寤惰繜鎽勫奖绠$悊 + * @return 缁撴灉 + */ + @Override + public int insertProVideoMonitor(ProVideoMonitor proVideoMonitor) + { + proVideoMonitor.setCreateBy(SecurityContextHolder.getUserName()); + proVideoMonitor.setCreateTime(DateUtils.getNowDate()); + return proVideoMonitorMapper.insertProVideoMonitor(proVideoMonitor); + } + + /** + * 淇敼寤惰繜鎽勫奖绠$悊 + * + * @param proVideoMonitor 寤惰繜鎽勫奖绠$悊 + * @return 缁撴灉 + */ + @Override + public int updateProVideoMonitor(ProVideoMonitor proVideoMonitor) + { + proVideoMonitor.setUpdateBy(SecurityContextHolder.getUserName()); + return proVideoMonitorMapper.updateProVideoMonitor(proVideoMonitor); + } + + /** + * 鎵归噺鍒犻櫎寤惰繜鎽勫奖绠$悊 + * + * @param ids 闇瑕佸垹闄ょ殑寤惰繜鎽勫奖绠$悊涓婚敭 + * @return 缁撴灉 + */ + @Override + public int deleteProVideoMonitorByIds(Long[] ids) + { + return proVideoMonitorMapper.deleteProVideoMonitorByIds(ids); + } + + /** + * 鍒犻櫎寤惰繜鎽勫奖绠$悊淇℃伅 + * + * @param id 寤惰繜鎽勫奖绠$悊涓婚敭 + * @return 缁撴灉 + */ + @Override + public int deleteProVideoMonitorById(Long id) + { + return proVideoMonitorMapper.deleteProVideoMonitorById(id); + } +} diff --git a/yanzhu-ui-vue3/src/App.vue b/yanzhu-ui-vue3/src/App.vue index ebf6925f..522e4201 100644 --- a/yanzhu-ui-vue3/src/App.vue +++ b/yanzhu-ui-vue3/src/App.vue @@ -63,5 +63,11 @@ onMounted(() => { top: 16px; display: none; } -} +} +:focus-visible { + outline: none !important; +} +.command{ + cursor: pointer; +} \ No newline at end of file diff --git a/yanzhu-ui-vue3/src/api/manage/costOutput.js b/yanzhu-ui-vue3/src/api/manage/costOutput.js index 44a0e23f..97603ba2 100644 --- a/yanzhu-ui-vue3/src/api/manage/costOutput.js +++ b/yanzhu-ui-vue3/src/api/manage/costOutput.js @@ -42,3 +42,36 @@ export function delCostOutput(id) { method: 'delete' }) } + +export function listByProjectId(query){ + return request({ + url: '/manage/costOutput/listByProjectId', + method: 'get', + params: query + }) +} + + +export function addYearInvestment(data){ + return request({ + url: '/manage/costOutput/addYearInvestment', + method: 'post', + data:data + }) +} + +export function addMonthInvestment(data){ + return request({ + url: '/manage/costOutput/addMonthInvestment', + method: 'post', + data:data + }) +} + +export function batchUpdate(datas){ + return request({ + url: '/manage/costOutput/batchUpdate', + method: 'post', + data:datas + }) +} diff --git a/yanzhu-ui-vue3/src/api/manage/videoMonitor.js b/yanzhu-ui-vue3/src/api/manage/videoMonitor.js new file mode 100644 index 00000000..6f255082 --- /dev/null +++ b/yanzhu-ui-vue3/src/api/manage/videoMonitor.js @@ -0,0 +1,51 @@ +import request from '@/utils/request' + +// 鏌ヨ寤惰繜鎽勫奖绠$悊鍒楄〃 +export function listVideoMonitor(query) { + return request({ + url: '/manage/videoMonitor/list', + method: 'get', + params: query + }) +} + +// 鏌ヨ寤惰繜鎽勫奖绠$悊璇︾粏 +export function getVideoMonitor(id) { + return request({ + url: '/manage/videoMonitor/' + id, + method: 'get' + }) +} + +// 鏂板寤惰繜鎽勫奖绠$悊 +export function addVideoMonitor(data) { + return request({ + url: '/manage/videoMonitor', + method: 'post', + data: data + }) +} + +// 淇敼寤惰繜鎽勫奖绠$悊 +export function updateVideoMonitor(data) { + return request({ + url: '/manage/videoMonitor', + method: 'put', + data: data + }) +} + +// 鍒犻櫎寤惰繜鎽勫奖绠$悊 +export function delVideoMonitor(id) { + return request({ + url: '/manage/videoMonitor/' + id, + method: 'delete' + }) +} + +export function getYsToken(id){ + return request({ + url: '/manage/videoMonitor/getYsToken/' + id, + method: 'get' + }) +} \ No newline at end of file diff --git a/yanzhu-ui-vue3/src/assets/icons/svg/4screen.svg b/yanzhu-ui-vue3/src/assets/icons/svg/4screen.svg new file mode 100644 index 00000000..f85e93ce --- /dev/null +++ b/yanzhu-ui-vue3/src/assets/icons/svg/4screen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/yanzhu-ui-vue3/src/assets/icons/svg/9screen.svg b/yanzhu-ui-vue3/src/assets/icons/svg/9screen.svg new file mode 100644 index 00000000..51747d7c --- /dev/null +++ b/yanzhu-ui-vue3/src/assets/icons/svg/9screen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/yanzhu-ui-vue3/src/assets/icons/svg/video.svg b/yanzhu-ui-vue3/src/assets/icons/svg/video.svg new file mode 100644 index 00000000..396885fb --- /dev/null +++ b/yanzhu-ui-vue3/src/assets/icons/svg/video.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/yanzhu-ui-vue3/src/components/CurrentProject/index.vue b/yanzhu-ui-vue3/src/components/CurrentProject/index.vue index 7d2af4a9..982437a5 100644 --- a/yanzhu-ui-vue3/src/components/CurrentProject/index.vue +++ b/yanzhu-ui-vue3/src/components/CurrentProject/index.vue @@ -1,6 +1,6 @@