iZaiZaiA 2 tahun lalu
induk
melakukan
5a4ed9025a

TEMPAT SAMPAH
src/assets/view/text-1.png


TEMPAT SAMPAH
src/assets/view/text-2.png


TEMPAT SAMPAH
src/assets/view/text-3.png


+ 1 - 1
src/config/index.js

@@ -17,7 +17,7 @@ export default {
     statusWhiteList: [],    //http的status默认放行列表
     ossUrl: 'https://bladex-test-info.oss-cn-chengdu.aliyuncs.com', //oss地址
     smsPhone: '',  //测试接受短信验证码的手机号
-    dev_version: '202209211120',    //开发版本号
+    dev_version: '202209211550',    //开发版本号
     prod_host: 'http://47.110.251.215:8090',  //线上
     dev_host: 'http://192.168.4.6', //黄键楠
     //dev_host: 'http://192.168.3.13', //祝炜

+ 13 - 2
src/layout/index.vue

@@ -1,7 +1,7 @@
 <template>
     <el-container class="hc-layout-box">
         <div class="hc-layout-bg-box" v-show="MenuBarKey === 'home-index'">
-            <img :src="HomeTheme.bg" alt="" v-if="HomeTheme.bg" crossOrigin="anonymous">
+            <img :src="HomeTheme.bg" alt="" id="imagebox" v-if="HomeTheme.bg" crossOrigin="anonymous">
         </div>
         <el-aside :width="isCollapse?'120px':'250px'" class="hc-aside-box" :class="[isCollapse?'collapse':'', MenuBarKey]">
             <div class="hc-aside-logo-box" @click="logoClick">
@@ -24,7 +24,10 @@
         </el-aside>
         <el-container class="hc-container-view" :class="MenuBarKey === 'home-index'?'home':''">
             <el-header class="hc-header-view">
-                <div class="hc-header-page-name">{{RoutesTitle}}</div>
+                <div class="hc-header-page-name">
+                    {{RoutesTitle}}
+                    <input multiple type="file" id="file" @change="handleChange" v-if="userInfo?.user_id == '1541381503819694081'">
+                </div>
                 <div class="hc-header-content">
                     <div class="hc-header-cascader-box">
                         <div class="project-name-box">{{projectInfo.projectAlias}} / {{contractInfo.name}}</div>
@@ -81,6 +84,7 @@ const RoutesName = ref(BarMenuKey);
 const RoutesTitle = ref(BarMenuTitle);
 const MenuBarData = ref(useAppState.getMenus)
 const isCollapse = ref(useAppState.getCollapse)
+const userInfo = ref(useAppState.getUserInfo);
 
 //项目合同段
 const projectInfo = ref({});
@@ -220,6 +224,13 @@ const getAssetsHomeFile = (url) => {
     return modules[path].default;
 }
 
+const handleChange = () => {
+    let file = document.getElementById("file").files[0]; // 获取input上传的图片数据;
+    let img = new Image();
+    let url = window.URL.createObjectURL(file); // 得到bolb对象路径,可当成普通的文件路径一样使用,赋值给src;
+    document.getElementById("imagebox").src = url;
+}
+
 //首页
 const logoClick = () => {
     router.push({name: 'home-index'});

+ 10 - 9
src/plugins/HTableForm.js

@@ -1,11 +1,11 @@
 import {createApp} from "vue/dist/vue.esm-bundler.js";
 import {getTokenHeader} from '~src/api/request/header';
+import {toParse} from "vue-utils-plus";
 import {
     ElButton,ElTooltip,ElInput,ElDatePicker,ElUpload,
     ElInputNumber,ElTimePicker,ElSelect,ElOption,ElRadioGroup,
     ElRadio,ElCheckbox,ElCheckboxGroup
 } from 'element-plus'
-import {toParse,deepClone} from "vue-utils-plus";
 const components = {
     ElButton,ElTooltip,ElInput, ElDatePicker, ElUpload,
     ElInputNumber, ElTimePicker, ElSelect, ElOption, ElRadioGroup,
@@ -28,12 +28,14 @@ export default class HTableForm {
             watch: {
                 tableForm: {
                     handler(obj) {
+                        console.log(obj)
                         this.formData = obj
                     },
                     deep: true
                 },
                 formData: {
                     handler(obj) {
+                        console.log(obj)
                         tableForm = obj
                     },
                     deep: true
@@ -77,8 +79,8 @@ export default class HTableForm {
                 },
                 //失去焦点事件
                 getRegularExpression(event, reg, msg) {
-                    const KeyName = event?.target?.getAttribute('keyname') || ''
-                    console.log(KeyName,reg,msg)
+                    //const KeyName = event?.target?.getAttribute('keyname') || ''
+                    //console.log(KeyName,reg,msg)
                 }
             }
         })
@@ -87,20 +89,19 @@ export default class HTableForm {
     }
     //处理日期范围数据
     static setPickerKey(data) {
-        const info = deepClone(data)
-        const pickerKey = info['pickerKey'] || ''
+        const pickerKey = data['pickerKey'] || ''
         if (pickerKey) {
             const pickerKeys = pickerKey.split(',')
             for (let i = 0; i < pickerKeys.length; i++) {
-                const val = info[pickerKeys[i]] || ''
+                const val = data[pickerKeys[i]] || ''
                 if (val) {
                     const dataVal = val.replace(/'/g,'"');
-                    info[pickerKeys[i]] = toParse(dataVal) || []
+                    data[pickerKeys[i]] = toParse(dataVal) || []
                 } else {
-                    info[pickerKeys[i]] = []
+                    data[pickerKeys[i]] = []
                 }
             }
         }
-        return info
+        return data
     }
 }

+ 3 - 1
src/views/data-fill/wbs.vue

@@ -723,7 +723,9 @@ const formCopyNodeModel = ref({})
 const copyNodeTable = ref([])
 
 //复制树被点击
-const copyNodeElTreeClick = ({data}) => {
+const copyNodeElTreeClick = ({node,data}) => {
+    //console.log(formCopyNodeModel.value)
+    //console.log(node)
     const TabKey = copyNodeTabKey.value;
     const {title} = formCopyNodeModel.value;
     if (TabKey === '2') {

+ 14 - 3
src/views/home/index.vue

@@ -3,7 +3,9 @@
         <div class="hc-home-input-box">
             <div class="hc-home-content">
                 <div class="hc-slogan-icon">
-                    <img class="logo" :src="ImgLogo" alt="">
+                    <img class="logo" :src="ImgText1" alt="" @click="getImgText(2)" v-if="ImgTextIndex === 1">
+                    <img class="logo" :src="ImgText2" alt="" @click="getImgText(3)" v-if="ImgTextIndex === 2">
+                    <img class="logo" :src="ImgText3" alt="" @click="getImgText(1)" v-if="ImgTextIndex === 3">
                 </div>
                 <SearchInput placeholder="请输入您想查找的内容" v-model="searchKey" @input="SearchKeyInput"/>
                 <div class="home-link-box">
@@ -20,9 +22,11 @@
 
 <script setup>
 import {ref,watch} from "vue";
-import {useAppStore} from "~src/store/index";
+import {useAppStore} from "~src/store";
 import SearchInput from '~com/home/SearchInput.vue'
-import ImgLogo from "~src/assets/logo/logo-1.png";
+import ImgText1 from "~src/assets/view/text-1.png";
+import ImgText2 from "~src/assets/view/text-2.png";
+import ImgText3 from "~src/assets/view/text-3.png";
 
 //变量
 const useAppState = useAppStore()
@@ -40,6 +44,13 @@ const searchKey = ref('')
 const SearchKeyInput = (value) => {
     searchKey.value = value
 }
+
+//切换图标
+const ImgTextIndex = ref(1)
+const getImgText = (index) => {
+    ImgTextIndex.value = index
+}
+
 </script>
 
 <style lang="scss" scoped>

+ 28 - 17
src/views/ledger/components/table-form.vue

@@ -154,7 +154,6 @@ const dateCalendarChoice = ({date, choices}) => {
     getExcelHtml(excelIdVal.value)
     getTheLogBusinessData(excelIdVal.value, choices)
     getSubmitLogDateList(date,primaryKeyId)
-    queryCurrentLogSelectProcessList(choices)
 }
 
 //获取模板标签数据
@@ -171,7 +170,7 @@ const getExcelHtml = async (excelId) => {
         const resData = isString(data) ? data || '' : ''
         excelHtmlData.value = resData
         if (!error && code === 200 && resData) {
-            setHTableForm(resData,excelId,tableFormData.value)
+            setHTableForm(resData,excelId)
         } else {
             isTableForm.value = false
             statusDesc.value = '暂无表单'
@@ -185,17 +184,17 @@ const getExcelHtml = async (excelId) => {
 
 //渲染表单
 const tableFormApp = ref(null)
-const setHTableForm = async (resData, excelId, info) => {
+const setHTableForm = (resData, excelId) => {
     //先卸载
     if (tableFormApp.value) {
         tableFormApp.value?.unmount()
     }
     if (resData) {
         isTableForm.value = true
-        await nextTick(() => {
+        nextTick(() => {
             tableFormApp.value = HTableForm.createForm({
                 template: resData,
-                tableForm: info,
+                tableForm: tableFormData.value,
                 appId: `#table-form-${excelId}`
             })
         })
@@ -219,10 +218,15 @@ const getTheLogBusinessData = async (excelId, recordDate) => {
     }, false)
     //设置默认数据
     let formArrData = getArrValue(data)
-    for (let i = 0; i < formArrData.length; i++) {
-        formArrData[i] = setFormDefaultData(formArrData[i])
+    if (formArrData.length > 0) {
+        for (let i = 0; i < formArrData.length; i++) {
+            formArrData[i] = setFormDefaultData(formArrData[i])
+        }
+    } else {
+        formArrData = [setFormDefaultData()]
     }
     formLogDataList.value = formArrData
+    console.log(formArrData)
     getBussDataInfo()
 }
 
@@ -234,13 +238,15 @@ const getBussDataInfo = (index = 0) => {
     const info = getObjValue(formLog[index])
     formLogIndex.value = index
     if (getObjNullValue(info)) {
-        tableFormData.value = HTableForm.setPickerKey(info)
+        HTableForm.setPickerKey(info)
+        tableFormData.value = info
     } else {
         tableFormData.value = {}
     }
     if (excelHtmlData.value) {
-        setHTableForm(excelHtmlData.value, excelIdVal.value, tableFormData.value)
+        setHTableForm(excelHtmlData.value, excelIdVal.value)
     }
+    queryCurrentLogSelectProcessList(info?.id ?? '')
 }
 
 //获取日期记录
@@ -309,8 +315,11 @@ const ElTreeLoadNode = async (node, resolve) => {
 //确认关联工序
 const processDataList = ref([])
 const processNodeClick = () => {
-    const keys = processElTree.value.getCheckedKeys();
-    //formLogDataList.value = formArrData
+    const keys = processElTree.value.getCheckedKeys()
+    const formIndex = formLogIndex.value
+    const formData = formLogDataList.value[formIndex]
+    const linkTabIds = formData['']
+
     let NodesArr = []
     for (let index = 0; index < keys.length; index++) {
         let pathArr = [];
@@ -322,6 +331,10 @@ const processNodeClick = () => {
             primaryKeyId: keys[index],
             pathName: pathArr.join('/')
         })
+        /*linkTabIds.push({
+            path: item['pathName'],
+            primaryKeyId: item['primaryKeyId']
+        });*/
     }
     processDataList.value = NodesArr
     processNodeModal.value = false
@@ -353,6 +366,7 @@ const tableFormSaveClick = async () => {
 
 //保存
 const saveExcelBussData = async () => {
+    console.log(formLogDataList.value)
     let linkTabIds = setProcessData(); //处理工序ID
     if (linkTabIds) {
         tableFormSaveLoading.value = true
@@ -421,13 +435,10 @@ const getBussPdfInfo = async () => {
 }
 
 //获取当前日志资料关联的工序节点信息
-const queryCurrentLogSelectProcessList = async (dateVal) => {
-    const {primaryKeyId} = menuItem.value
+const queryCurrentLogSelectProcessList = async (bid) => {
     const { error, code, data, msg } = await queryApi.queryCurrentLogSelectProcessList({
         contractId: contractId.value || '',
-        nodePrimaryKeyId: primaryKeyId,
-        recordTime: dateVal,
-        theLogId: ""
+        businessId: bid ?? ''
     }, false)
     //处理数据
     if (!error && code === 200) {
@@ -495,7 +506,7 @@ const copyTimeSaveClick = async () => {
 }
 
 //设置表单默认数据
-const setFormDefaultData = (formInfo) => {
+const setFormDefaultData = (formInfo = {}) => {
     return {
         linkTabIds: [],
         ...formInfo,