lyc-dev #95
|
@ -0,0 +1,5 @@
|
||||||
|
declare module '*.vue' {
|
||||||
|
import { ComponentOptions } from 'vue'
|
||||||
|
const componentOptions: ComponentOptions
|
||||||
|
export default componentOptions
|
||||||
|
}
|
|
@ -125,7 +125,8 @@ import {
|
||||||
User,
|
User,
|
||||||
Switch,
|
Switch,
|
||||||
More,
|
More,
|
||||||
Material
|
Material,
|
||||||
|
AddPicture
|
||||||
} from '@icon-park/vue-next'
|
} from '@icon-park/vue-next'
|
||||||
|
|
||||||
export interface Icons {
|
export interface Icons {
|
||||||
|
@ -256,7 +257,8 @@ export const icons: Icons = {
|
||||||
IconUser: User,
|
IconUser: User,
|
||||||
IconSwitch: Switch,
|
IconSwitch: Switch,
|
||||||
IconMore: More,
|
IconMore: More,
|
||||||
IconMaterial: Material
|
IconMaterial: Material,
|
||||||
|
IconAddPicture: AddPicture
|
||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
</div>
|
</div>
|
||||||
<el-button type="primary" @click="onInsert(item)">插入</el-button>
|
<el-button type="primary" @click="onInsert(item)">插入</el-button>
|
||||||
</div>
|
</div>
|
||||||
|
<el-empty description="暂无素材" v-if="!list.length" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -93,11 +94,9 @@ const GetUrlParameters = (parameters) => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return resData;
|
return resData;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
const proxyToBase64 = (url)=> {
|
const proxyToBase64 = (url)=> {
|
||||||
const dourl = GetUrlParameters(url)
|
const dourl = GetUrlParameters(url)
|
||||||
console.log(dourl,'dourl')
|
console.log(dourl,'dourl')
|
||||||
|
|
|
@ -83,6 +83,7 @@
|
||||||
</Popover>
|
</Popover>
|
||||||
<IconPreviewOpen class="handler-item" v-tooltip="'插入试题'" @click="classWorkTaskVisible = true" />
|
<IconPreviewOpen class="handler-item" v-tooltip="'插入试题'" @click="classWorkTaskVisible = true" />
|
||||||
<IconMaterial class="handler-item" v-tooltip="'插入素材'" @click="materiaVisible = true"/>
|
<IconMaterial class="handler-item" v-tooltip="'插入素材'" @click="materiaVisible = true"/>
|
||||||
|
<IconAddPicture class="handler-item" v-tooltip="'文生图'" @click="imgVisible = true" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="right-handler">
|
<div class="right-handler">
|
||||||
|
@ -121,14 +122,18 @@
|
||||||
@update="data => { onhtml2canvas(data); classWorkTaskVisible = false }"
|
@update="data => { onhtml2canvas(data); classWorkTaskVisible = false }"
|
||||||
/>
|
/>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
<!--插入素材-->
|
||||||
<Modal
|
<Modal
|
||||||
v-model:visible="materiaVisible"
|
v-model:visible="materiaVisible"
|
||||||
:width="880">
|
:width="880">
|
||||||
<MaterialDialog @close="materiaVisible = false" @insertMaterial="insertMaterial"/>
|
<MaterialDialog @close="materiaVisible = false" @insertMaterial="insertMaterial"/>
|
||||||
</Modal>
|
</Modal>
|
||||||
|
<!--文生图-->
|
||||||
|
<Modal
|
||||||
|
v-model:visible="imgVisible"
|
||||||
|
:width="1300">
|
||||||
|
<TextCreateImg hasPPt @insertImg="(url: string) => { createImageElement(url); imgVisible = false }" />
|
||||||
|
</Modal>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -156,6 +161,7 @@ import Popover from '../../../components/Popover.vue'
|
||||||
import PopoverMenuItem from '../../../components/PopoverMenuItem.vue'
|
import PopoverMenuItem from '../../../components/PopoverMenuItem.vue'
|
||||||
import QuestToPPTist from '@/views/classTask/newClassTaskAssign/questToPPTist/index.vue'
|
import QuestToPPTist from '@/views/classTask/newClassTaskAssign/questToPPTist/index.vue'
|
||||||
import MaterialDialog from './MaterialDialog.vue'
|
import MaterialDialog from './MaterialDialog.vue'
|
||||||
|
import TextCreateImg from '@/components/ai-kolors/index.vue'
|
||||||
|
|
||||||
const mainStore = useMainStore()
|
const mainStore = useMainStore()
|
||||||
const { creatingElement, creatingCustomShape, showSelectPanel, showSearchPanel, showNotesPanel } = storeToRefs(mainStore)
|
const { creatingElement, creatingCustomShape, showSelectPanel, showSearchPanel, showNotesPanel } = storeToRefs(mainStore)
|
||||||
|
@ -269,8 +275,10 @@ const insertMaterial = (item: MaterialParams) =>{
|
||||||
createImageElement(data)
|
createImageElement(data)
|
||||||
}
|
}
|
||||||
materiaVisible.value = false
|
materiaVisible.value = false
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 文生图
|
||||||
|
const imgVisible = ref(false)
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="scss" scoped>
|
<style lang="scss" scoped>
|
||||||
|
|
|
@ -144,8 +144,14 @@ import { convertTextToPicture, getQueue, getPromptId, getPicture, chattoprompt,
|
||||||
import CryptoJS from 'crypto-js'
|
import CryptoJS from 'crypto-js'
|
||||||
import { useRoute } from 'vue-router'
|
import { useRoute } from 'vue-router'
|
||||||
export default {
|
export default {
|
||||||
|
props: {
|
||||||
|
hasPPt: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
}
|
||||||
|
},
|
||||||
data() {
|
data() {
|
||||||
|
|
||||||
return {
|
return {
|
||||||
form: {
|
form: {
|
||||||
ratio: "512",
|
ratio: "512",
|
||||||
|
@ -384,7 +390,7 @@ export default {
|
||||||
urls.push(url0)
|
urls.push(url0)
|
||||||
buttonState.push({
|
buttonState.push({
|
||||||
disabled: false,
|
disabled: false,
|
||||||
text: "插入本课素材资源库",
|
text: this.hasPPt ? '插入' : "插入本课素材资源库",
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
this.skeletonNumber = 0
|
this.skeletonNumber = 0
|
||||||
|
@ -476,6 +482,10 @@ export default {
|
||||||
|
|
||||||
//保存图片到素材库
|
//保存图片到素材库
|
||||||
async saveImage(resultIndex, index, url, resultItem) {
|
async saveImage(resultIndex, index, url, resultItem) {
|
||||||
|
if(this.hasPPt){
|
||||||
|
this.$emit('insertImg', url)
|
||||||
|
return
|
||||||
|
}
|
||||||
this.buttonStates[resultIndex][index].disabled = true;
|
this.buttonStates[resultIndex][index].disabled = true;
|
||||||
this.buttonStates[resultIndex][index].text = "正在保存...";
|
this.buttonStates[resultIndex][index].text = "正在保存...";
|
||||||
const numberIndex = url.indexOf('filename=');
|
const numberIndex = url.indexOf('filename=');
|
||||||
|
|
Loading…
Reference in New Issue