natasha 1 год назад
Родитель
Сommit
3ca2e9dbc8

+ 1 - 1
src/views/content_manage/course_manage/CreateLive.vue

@@ -59,7 +59,7 @@
                         <el-date-picker
                             v-model="organizeForm.startData"
                             type="datetime"
-                            placeholder="选择日期"
+                            placeholder="选择日期和时间"
                             value-format="yyyy-MM-dd HH:mm"
                             format="yyyy-MM-dd HH:mm">
                         </el-date-picker>

+ 2 - 2
src/views/content_manage/course_manage/CreateRecorded.vue

@@ -734,11 +734,11 @@ export default {
                 form.file_url = res.lb_course_cs_item.file_url
                 form.audioResource = res.lb_course_cs_item.file_id?[{
                     id:res.lb_course_cs_item.file_id,
-                    name:'123'
+                    name:res.lb_course_cs_item.file_name
                 }]:[],
                 form.videoResource = res.lb_course_cs_item.file_id?[{
                     id:res.lb_course_cs_item.file_id,
-                    name:'123'
+                    name:res.lb_course_cs_item.file_name
                 }]:[],
                 form.intro = res.lb_course_cs_item.intro
                 res.resource_file_list.forEach(item=>{

+ 225 - 4
src/views/content_manage/newspaper_manage/CreateNewspaper.vue

@@ -1,5 +1,5 @@
 <template>
-  <div class="manage-root personnel-create">
+  <div class="manage-root newspaper-create">
     <Header />
     <div class="manage-root-contain">
         <nav-menu class="manage-root-contain-left" :activeMenuIndex="activeMenuIndex"></nav-menu>
@@ -27,7 +27,78 @@
             </div>
             <div class="create-bottom">
                 <template v-if="stepIndex===0">
-                    <a @click="handleLinkChannel">栏目模版维护</a> 
+                    <el-form :model="newspaperForm" :rules="rulesNewspaper" ref="newspaperForm" label-width="100px" class="registerForm">
+                        <el-form-item label="报纸封面" prop="cover_image_url">
+                            <upload :datafileList="newspaperForm.cover_image_list" :changeFillId="handleAvatarSuccess" :fileName="'cover'" :showList="true" uploadType="image" :filleNumber="1" v-if="!newspaperForm.cover_image_url" styleType="upload" />
+                            <div class="cover-box" v-else @mouseover="Imagemouseover('coverFlag',true)" @mouseout="Imagemouseover('coverFlag',false)">
+                                <el-image :src="newspaperForm.cover_image_url" fit="cover" style="width:200px;height:280px;"></el-image>
+                                <p v-show="coverFlag" @click="handleDeleteFile('cover',0)"><i class="el-icon-delete"></i></p>
+                            </div>
+                            <p class="tips">建议上传宽高为200*280的图</p>
+                        </el-form-item>
+                        <el-form-item label="报纸名称" prop="iss_name">
+                            <el-input v-model="newspaperForm.iss_name" placeholder="请输入报纸名称" @blur="handleTrim('newspaperForm','iss_name')"></el-input>
+                        </el-form-item>
+                        <el-form-item label="出版机构" prop="vendor_name">
+                            <el-select v-model="newspaperForm.vendor_name" filterable allow-create default-first-option placeholder="请选择">
+                                <el-option
+                                    v-for="(item,i) in vendorList"
+                                    :key="item+i"
+                                    :label="item"
+                                    :value="item">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                        <el-form-item label="是否合刊" prop="comb_flag">
+                            <el-radio-group v-model="newspaperForm.comb_flag" :disabled="id?true:false">
+                                <el-radio :label="0">否</el-radio>
+                                <el-radio :label="1">是</el-radio>
+                            </el-radio-group>
+                        </el-form-item>
+                        <el-form-item label="期数" prop="iss_no" class="validity-box" v-if="newspaperForm.comb_flag===0">
+                            <el-input placeholder="请输入" v-model="newspaperForm.iss_no" type="number">
+                                <template slot="append">期</template>
+                            </el-input>
+                        </el-form-item>
+                        <el-form-item label="期数" required prop="iss_no" class="iss-no-box" v-if="newspaperForm.comb_flag===1">
+                            <el-input v-model="newspaperForm.iss_no_start" type="number" class="iss-start">
+                                <template slot="append">-</template>
+                            </el-input>
+                            <el-input v-model="newspaperForm.iss_no_end" type="number">
+                                <template slot="append">期</template>
+                            </el-input>
+                        </el-form-item>
+                        <el-form-item label="发行日期" prop="release_date">
+                            <el-date-picker
+                                v-model="newspaperForm.release_date"
+                                type="date"
+                                placeholder="选择日期"
+                                value-format="yyyy-MM-dd"
+                                format="yyyy-MM-dd">
+                            </el-date-picker>
+                        </el-form-item>
+                        <el-form-item label="学段" prop="study_phase">
+                            <el-select v-model="newspaperForm.study_phase" placeholder="请选择" @change="getVlList">
+                                <el-option
+                                    v-for="item in $studyType"
+                                    :key="item.study_phase"
+                                    :label="item.study_phase_name"
+                                    :value="item.study_phase">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                        <el-form-item label="课标词表" prop="vl_id">
+                            <el-select v-model="newspaperForm.vl_id" filterable placeholder="请选择">
+                                <el-option
+                                    v-for="item in vlList"
+                                    :key="item.id"
+                                    :label="item.vl_name"
+                                    :value="item.id">
+                                </el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-form>
+                    <!-- <a @click="handleLinkChannel">栏目模版维护</a>  -->
                 </template>
                 <div v-if="stepIndex===1">
                    
@@ -52,10 +123,13 @@
 import Header from "../../../components/Header.vue";
 import NavMenu from "../../../components/NavMenu.vue"
 import Breadcrumb from '../../../components/Breadcrumb.vue';
+import Upload from "../../../components/Upload.vue"
+import { getLogin } from "@/api/ajax";
+import { mapState } from 'vuex';
 
 export default {
   //import引入的组件需要注入到对象中才能使用
-  components: { Header, NavMenu, Breadcrumb },
+  components: { Header, NavMenu, Breadcrumb, Upload },
   props: {},
   data() {
     return {
@@ -80,11 +154,44 @@ export default {
         ],
         id:this.$route.query.id?this.$route.query.id:'',
         stepIndex:0, // 步骤索引
+        coverFlag: false,
+        newspaperForm:{
+            cover_image_url: '',
+            cover_image_list: [],
+            cover_image_id: null,
+            iss_name: '',
+            vendor_name: '二十一世纪学生英文报',
+            comb_flag: 0,
+            iss_no: null,
+            iss_no_start: null,
+            iss_no_end: null,
+            release_date: '',
+            study_phase: null,
+            vl_id: '',
+            chn_data: [],
+            info_tag_data: [],
+            iss_note: '',
+            with_addon_flag: 1,
+            iss_price_org: null,
+            iss_price_sell: null,
+            with_addon_price_org: null,
+            with_addon_price_sell: null
+        },
+        rulesNewspaper:{
+            iss_name:[
+                { required: true, message: '请输入报纸名称', trigger: 'blur' }
+            ],
+            vendor_name: [
+                { required: true, message: '请输入出版机构', trigger: 'blur' }
+            ],
+        },
+        vendorList: [], // 出版机构列表
+        vlList: [], // 课标词表
     }
   },
   //计算属性 类似于data概念
   computed: {
-    
+    ...mapState(['$studyType']),
   },
   //监控data中数据变化
   watch: {
@@ -119,6 +226,64 @@ export default {
         this.$router.push({
             path:'/channelList'
         })
+    },
+    handleAvatarSuccess(fileList,name) {
+        if(name==='cover'){
+            this.newspaperForm.cover_image_list = fileList
+            this.newspaperForm.cover_image_id = fileList[0]&&fileList[0].response&&fileList[0].response.file_info_list&&fileList[0].response.file_info_list[0]?fileList[0].response.file_info_list[0].file_id:''
+            this.newspaperForm.cover_image_url = fileList[0]&&fileList[0].response&&fileList[0].response.file_info_list&&fileList[0].response.file_info_list[0]?fileList[0].response.file_info_list[0].file_url:''
+        }
+    },
+    Imagemouseover(item,flag) {
+      this[item] = flag
+    },
+    handleDeleteFile(item,i) {
+      this.$confirm("确定删除吗?", "提示", {
+        confirmButtonText: "确定",
+        cancelButtonText: "取消",
+        type: "warning",
+      }).then(() => {
+        if(item==='cover'){
+            this.newspaperForm.cover_image_list.splice(i, 1);
+            this.newspaperForm.cover_image_url = ''
+            this.newspaperForm.cover_image_id = null
+        }
+      });
+    },
+    // 去掉前后空格
+    handleTrim(form,fild){
+        this[form][fild] = this[form][fild].trim()
+    },
+    // 获取出版机构列表
+    getVendorList(){
+        let MethodName = "/PaperServer/Manager/IssueManager/FindVendors";
+        let data = {
+            key_word: ''
+        }
+        getLogin(MethodName, data)
+        .then((res) => {
+            if(res.status===1){
+               this.vendorList = res.data
+            }
+        })
+        .catch(() => {
+        });
+    },
+    // 课标词表
+    getVlList(){
+        this.newspaperForm.vl_id = ''
+        let MethodName = "/PaperServer/Manager/VocListManager/FindSimplesByCond";
+        let data = {
+            study_phase: this.newspaperForm.study_phase
+        }
+        getLogin(MethodName, data)
+        .then((res) => {
+            if(res.status===1){
+               this.vlList = res.data
+            }
+        })
+        .catch(() => {
+        });
     }
   },
   //生命周期 - 创建完成(可以访问当前this实例)
@@ -132,6 +297,8 @@ export default {
         obj.text = '编辑报纸'
     }
     this.breadcrumbList.push(obj)
+    this.getVendorList()
+    this.getVlList()
   },
   //生命周期 - 挂载完成(可以访问DOM元素)
   mounted() {
@@ -204,5 +371,59 @@ export default {
             line-height: 32px;
         }
     }
+    
+}
+</style>
+<style lang="scss">
+.newspaper-create{
+    .validity-box{
+        width: 114px;
+        .el-input-group{
+            width: 114px;
+        }
+        .el-input__inner{
+            text-align: center;
+        }
+        .el-input-group__append{
+            border: none;
+            background: #F2F3F5;
+            padding: 0 8px 0 0;
+        }
+    } 
+    .iss-no-box{
+        width: 264px;
+        .el-form-item__content{
+            display: flex;
+            border-radius: 4px;
+            overflow: hidden;
+            width: 164px;
+        }
+        .el-input-group{
+            width: 82px;
+            flex-shrink: 0;
+            border-radius: 0;
+        }
+        .el-input__inner{
+            border-radius: 0;
+            padding: 0;
+            text-align: center;
+        }
+        .el-input-group__append{
+            border: none;
+            background: #F2F3F5;
+            padding: 0;
+            border-radius: 0;
+            width: 34px;
+            text-align: center;
+        }
+        .iss-start{
+            .el-input-group__append{
+                width: 12px;
+            }
+        }
+    }
+    input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {
+        -webkit-appearance: none !important;
+    }  
 }
 </style>